11.5.4. 寄存器定义

寄存器列表

寄存器名

偏移地址

寄存器功能描述

UART_RBR

0x000

UART 数据接收寄存器

UART_THR

0x000

UART 数据发送寄存器

UART_DLL

0x000

UART 低位除数寄存器

UART_DLH

0x004

UART 高位除数寄存器

UART_IER

0x004

UART 中断使能寄存器

UART_IIR

0x008

UART 中断标志寄存器

UART_FCR

0x008

UART FIFO控制寄存器

UART_LCR

0x00C

UART 线路控制寄存器

UART_MCR

0x010

UART 调制解调器控制寄存器

UART_LSR

0x014

UART 线路状态寄存器

UART_MSR

0x018

UART 调制解调器状态寄存器

UART_SCH

0x01C

UART 暂存器

UART_USR

0x07C

UART 状态寄存器

UART_TFL

0x080

UART 发送FIFO深度寄存器

UART_RFL

0x084

UART 接收FIFO深度寄存器

UART_HSK

0x088

UART DMA握手配置寄存器

UART_HALT

0x0A4

UART 停止发送寄存器

UART_DBG_DLL

0x0B0

UART 低位除数调试寄存器

UART_DBG_DLH

0x0B4

UART 高位除数调试寄存器

UART_485_DE

0x0B8

UART RS485 DE时间寄存器

UART_485_CTL

0x0C0

UART RS485 控制与状态寄存器

RS485_ADDR_MATCH

0x0C4

UART RS485 地址匹配寄存器

BUS_IDLE_CHK

0x0C8

UART RS485 总线空闲查询寄存器

TX_DLY

0x0CC

UART 发送延时寄存器

UART_VERSION

0x0FC

UART 版本号

寄存器描述

11.5.4.1. 0x000 UART_RBR

默认值:0x00000000

UART数据接收寄存器(Receive Buffer)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R

0x0

RBR(Receive Buffer Register)
数据接收寄存器
串行输入端口在UART模式下接收到的数据,或者红外模式下串行红外输入的数据。仅当线路
状态寄存器(LSR)中的数据就绪位(DR bit)被设为1时,该寄存器中的数据才有效。
如果在FIFO模式中FIFO使能(FCR[0]设为1),该寄存器则访问接收FIFO的顶部(先进先出)。
如果接收FIFO已满,并且在下一个数据到达之前没有读取该寄存器,那么FIFO中已经存在的
数据将被保留,但任何传入的数据都会丢失并发生溢出错误。

11.5.4.2. 0x000 UART_THR

默认值:0x00000000

UART数据发送寄存器(Transmit Holding)

位域

类型

默认值

描述

31:8

-

-

-

7:0

W

0x0

THR(Transmit Holding Register)
数据发送寄存器
串行输出端口在UART模式下发送的数据,或者红外模式下串行输出的数据。仅当线路
状态寄存器(LSR)中的THRE位(LSR[5])被设为1时,数据才会写到该寄存器。
如果在FIFO模式中FIFO使能(FCR[0]设为1)并且THRE为1,16个字符的数据则可以
在FIFO满之前写入该寄存器。当FIFO已满时,任何写入数据的尝试都会导致写入数据丢失。

11.5.4.3. 0x000 UART_DLL

默认值:0x00000000

UART低位除数寄存器(Divisor Latch Low)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

DLL(Divisor Latch Low)
低位除数寄存器。
16位UART波特率除数的低8位。仅当DLAB位(LCR[7])为1并且UART空闲(USR[0])时,
该寄存器才能被访问。输出波特率等于串行时钟频率除以波特率除数的16倍,如下:
波特率=串行时钟频率/(16*除数)
注意当除数寄存器(DLL与DLH)设置为0时,波特时钟被禁用,并且没有串行通信发生。

11.5.4.4. 0x004 UART_DLH

默认值:0x00000000

UART高位除数寄存器(Divisor Latch High)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

DLH(Divisor Latch High)
高位除数寄存器。
16位UART波特率除数的高8位。仅当DLAB位(LCR[7])为1并且UART空闲(USR[0])时,
该寄存器才能被访问。输出波特率等于串行时钟频率除以波特率除数的16倍,如下:
波特率=串行时钟频率/(16*除数)
注意当除数寄存器(DLL与DLH)设置为零时,波特时钟被禁用,并且没有串行通信发生。

11.5.4.5. 0x004 UART_IER

默认值:0x00000000

UART中断使能寄存器(Interrupt Enable)

位域

类型

默认值

描述

31:8

-

-

-

7

R/W

0x0

PTIME(Programmable THRE Interrupt Mode Enable)
THRE中断模式使能
0:未使能
1:使能
此位设0时,THRE中断会在非空的条件清除
此位设1时,THRE中断会在低于触发深度FCR[5:4]的条件清除

6

-

-

-

5

R/W

0x0

Shifter_Reg_Empty_EN
发送移位寄存器为空中断使能
此为用于发送FIFO为空并且移位寄存器也为空使能控制
0:未使能
1:使能

4

R/W

0x0

RS485_INT_EN(RS485 Interrupt Enable)
RS485中断使能
0:未使能
1:使能

3

R/W

0x0

EDSSI(Enable Modem Status Interrupt)
调制解调器状态中断使能
该位用于调制解调器状态(MSR)中断使能控制,为第四优先级中断。
0:未使能
1:使能

2

R/W

0x0

ELSI(Enable Receive Line Status Interrupt)
接收线路状态中断使能
该位用于接收线路状态中断使能控制,为最高级中断。
0:未使能
1:使能

1

R/W

0x0

ETBEI(Enable Transmit Holding Register Empty Interrupt)
数据发送寄存器为空中断使能
该位用于数据发送寄存器为空中断使能控制,为第三优先级中断。
0:未使能
1:使能

0

R/W

0x0

ERBFI(Enable Receive Data Available Interrupt)
接收数据可用中断使能
该位用于接收数据可用中断使能控制,以及字符超时中断控制(如果在FIFO模式
并且FIFO使能),为第二优先级中断。
0:未使能
1:使能

11.5.4.6. 0x008 UART_IIR

默认值:0x00000001

UART中断标志寄存器(Interrupt Identity)

位域

类型

默认值

描述

31:8

-

-

-

7:6

R

0x0

FEFLAG(FIFOs Enable Flag)
FIFOs使能标志
该位用于表明FIFO是否使能
0:未使能
3:使能

5

-

-

-

4

RC

0x0

Shifter_Reg_Empty_INT
发送移位寄存器为空中断状态
1:中断触发
0:中断未触发或被清除

3:0

R

0x1

IID(Interrupt ID)
中断ID
表示最高优先级的挂起中断,可以是以下类型之一:
0x0:调制解调器状态
0x1:无中断
0x2:THR为空
0x3:RS485中断
0x4:接收数据可用
0x6:接收线路状态
0x7:繁忙检测
0xC:字符超时
位3表示只有在启用FIFO并用于区分字符超时条件中断时,才会发生中断

中断优先级

中断ID

优先级

中断类型

中断源

中断复位

0x1

-

-

-

-

0x6

最高级

接收线路状态
溢位/奇偶检验/帧错误或者break中断
读取线路状态寄存器

0x3

第二级

RS485中断
在RS485模式中,接收地址数据和匹配设置
地址
地址标志写1复位

0x4

第三级

接收数据可用
接收数据可用(非FIFO模式或者FIFO
未使能)或达到接收FIFO触发水平
(FIFO模式和FIFO使能)
读取接收缓冲寄存器(非FIFO模
式或者FIFO未使能)或FIFO低于
触发水平(FIFO模式和FIFO使能)

0xC

第四级

字符超时
在4个字符时间内,接收FIFO没有字符进
出,并且在此期间FIFO中至少有一个字符
读取数据接收寄存器

0x2

第五级

数据发送寄存器
为空
数据发送寄存器为空(THRE模式未使能)
或发送FIFO处于或者低于阈值
(THRE模式使能)
读取中断标志寄存器(如果为中断
源);或写数据进数据发送寄存器
(FIFO或者THRE模式未选择或者
未使能);或发送FIFO高于阈值
(选择并使能FIFO和THRE模式)

0x0

第六级

调制解调器状态
CTS 如果处于自动流控,CTS不会触发
读取调制解调器状态寄存器

0x7

第七级

繁忙检测标志
主处理器在UART繁忙时(USR[0]设置为1)
尝试写入线路控制寄存器
读取UART状态寄存器

11.5.4.7. 0x008 UART_FCR

默认值:0x00000000

UART FIFO控制寄存器(FIFO Control)

位域

类型

默认值

描述

31:8

-

-

-

7:6

W

0x0

RT(RX Trigger)
接收触发
用于在接收FIFO中选择接收数据可用中断的触发深度。在自动流控制模式中,它用于确定
何时使rts_n(Request to Send)信号无效,也用于确定DRQ信号在某些操作模式下何时有效。
0:FIFO中一个字符
1:四分之一 FIFO
2:二分之一 FIFO
3:接近FIFO满状态(FIFO-2)

5:4

W

0x0

TFT(TX Empty Trigger)
发送为空触发
用于选择产生发送保持寄存器为空中断的空阈值电平;也用于确定DRQ信号在某些操作模式
中何时有效。
0:FIFO为空
1:FIFO中2个字符
2:四分之一 FIFO
3:二分之一 FIFO

3

W

0x0

DMAM(DMA Mode)
DMA模式
0:模式0
在这个模式中,如果PTE(HALT[7])为1并且发送FIFO使能,当TFL(发送FIFO深度)小于
或者等于FIFO触发深度时,将发送TX DMA请求。如果PTE为1并且发送FIFO未使能,
当THRE为0时,将发送TX DMA请求。如果PTE为0,当发送FIFO为空时,将发送TX DMA请求。
如果DMA_PTE_RX为1并且接收FIFO使能,当RFL(接收FIFO深度)等于或者大于FIFO触发
深度时将发送RX_DRQ
1:模式1
在这个模式中,如果PTE为1并且发送FIFO使能,当TFL小于或者等于FIFO触发深度时,
将发送TX DMA请求。如果PTE为低,TX DMA请求将在TX FIFO为空时发送,并且仅当
TX FIFO已满时停止请求。如果RFL等于或者大于FIFO触发深度,RX_DRQ将会设为1,
在其他情况则为0。

2

W1C

0x0

TXFIFOR(TX FIFO Reset)
发送FIFO复位
复位发送FIFO的控制并且将FIFO清空。也可以清除DMA发送请求。
此位不需要清除,为自动清除

1

W1C

0x0

RXFIFOR(RX FIFO Reset)
接收FIFO复位
复位接收FIFO的控制并且将FIFO清空。也可以清除DMA接收请求。
此位不需要清除,为自动清除

0

W

0x0

FIFOE(FIFOs Enable)
FIFOs使能
使能/未使能发送以及接收FIFO.
每当该位的值改变时,FIFO的发送以及接收控制部分都会复位

11.5.4.8. 0x00C UART_LCR

默认值:0x00000000

UART线路控制寄存器(Line Control)

位域

类型

默认值

描述

31:8

-

-

-

7

R/W

0x0

DLAB(Divisor Latch Access Bit)
除数存取位
此位只有当UART空闲时(USR[0]为0)才可写。用于使能除数寄存器(DLL和DLH)的读写,
以设置UART的波特率。在初始化波特率设置后,必须清除此位,以便访问其他寄存器。
0:选择接收缓冲寄存器(RBR)/发送保持寄存器(THR)/中断使能寄存器(IER)
1:选择低位除数寄存器(DLL)以及高位除数寄存器(DLH)

6

R/W

0x0

BC(Break Control Bit)
中断信号控制位
产生一个中断条件传输到接收端。
若此位设1,串行输出将强制为逻辑0状态。
如果处于非回环模式中(取决于MCR[4]),串行输出线强制为低电平,直到清除此位。

5:4

R/W

0x0

EPS(Even Parity Select)
偶校验选择
此位只有当UART空闲时(USR[0]为0)才可写。当使能奇偶校验时(PEN 设为1),
用于选择奇性或者偶性校验。设置 LCR[5] 可反转LCR[4]。
0:奇性校验
1:偶性校验
2或3:反转LCR[4]
在RS485模式中,它是第9位地址位。
3:第9位为0,表明这是一个数据字节
2:第9位为1,表明这是一个地址字节
注意:当使用此功能时,PEN(LCR[3])必须设为1.

3

R/W

0x0

PEN(Parity Enable)
奇偶校验使能
此位只有当UART空闲时(USR[0]为0)才可写。该位用于使能和未使能发送接收串行字符中的
奇偶校验生成与检测。
0:奇偶检验未使能
1:奇偶检验使能

2

R/W

0x0

STOP(Number of Stop Bits)
停止位数
只有当UART空闲时(USR[0]为0)才可写。用于选择外围设备发送和接收的每个字符的停止
位数。当设为0时,在串行数据中传输1停止位。当设为1且数据位设为5位时(LCR[1:0]),传输
1.5个停止位;否则传输2位停止位。注意不管选择多少个停止位,接收器只检查第一个停止位。
0:1个停止位
1:当DLS(LCR[1:0])为0时1.5个停止位,否则2个停止位

1:0

R/W

0x0

DLS(Data length Select)
数据长度选择
此位只有当UART空闲时(USR[0]为0)才可写。用于选择外围设备发送和接收的每个字符的
数据位数。可选择的位数如下:
0:5位
1:6位
2:7位
3:8位

11.5.4.9. 0x010 UART_MCR

默认值:0x00000000

UART调制解调器控制寄存器(Modem Control)

位域

类型

默认值

描述

31:8

-

-

-

7:6

R/W

0x0

UART_FUNCTION
选择UART或者RS485
0:UART 模式
2:RS485模式(常规485,3线模式,TX、RX、RTS)
3:RS485-2wire模式(特殊485,2线模式,TX/RX、RTS)

5

R/W

0x0

AFCE(Auto Flow Control Enable)
自动流控制使能
当使能FIFO以及此位设1时,自动流控制功能使能
0:自动流控制模式未使能
1:自动流控制模式使能

4

R/W

0x0

LOOP(Loop Back Mode)
回环模式
0:正常模式
1:回环模式
用于将UART置于调试模式以进行测试。如果在UART模式下运行(MCR[7:6] 设为0),
sout线上的数据保持为高,而串行数据输出在内部回环到sin线路。在这种模式下,
所有的中断都是正常的。此外,在回环模式下,调制解调器控制输入(cts_n)断开,
输出(rts_n)在内部回环输入。

3:2

-

-

-

1

R/W

0x0

RTS(Request To Send)
发送请求
用于直接控制发送请求(rts_n)输出。rts_n输出用于通知调制解调器UART已准备好交换
数据。当自动流控制未使能(MCR[5]设为0),则需通过将此位设为1,使rts_n处于低电平。
在自动流模式中(MCR[5]设为1)并且FIFO使能(FCR[0]设为1),也需通过将此位设为1,
使rts_n处于低电平,但同时也受到接收FIFO触发深度门控(当超过阈值时rts_n处于高电平
无效状态)。当MCR[1]设为0时rts_n无效
0: rts_n 信号无效状态(高电平)
1: rts_n 信号有效状态(低电平)
注意在回环模式中(MCR[4]设为1),当该位置的值在内部回环输入时,rts_n输出保持高电平
无效状态。
在RS485或RS485-2模式中,RTS外接485收发器方向控制脚DE,需通过设置此位控制发送接收
方向,设1则为接收方向,设0则为发送方向。

0

-

-

-

11.5.4.10. 0x014 UART_LSR

默认值:0x00000060

UART线路状态寄存器(Line Status)

位域

类型

默认值

描述

31:8

-

-

-

7

R

0x0

FIFOERR(RX Data Error In FIFO)
FIFO接收数据错误
如果FIFO未使能,此位总为0;如果FIFO使能且接收FIFO中至少有PE(LSR[2])、FE(LSR[3])
和BI(LSR[4])中一个,此为被置1。如果FIFO没有后续错误,则通过读取LSR寄存器清除此位。

6

R

0x1

TEMT(Transmitter Empty)
发送器为空
如果FIFO未使能,每当数据发送寄存器以及发送移位寄存器为空时,该位设为1;
如果FIFO使能,每当发送FIFO以及发送移位寄存器为空时,该位设位1。
在这两种情况下,当一个字符被写入发送数据信道时,该位被清除

5

R

0x1

THRE(TX Holding Register Empty)
数据发送寄存器为空
如果FIFO未使能,每当数据发送寄存器为空并且准备接收新数据时,该位被设为1;CPU写入
数据发送寄存器时,该位被清除。如果FIFO使能,每当发送FIFO为空时,该位被设为1;
当至少有一个字符写入发送FIFO时,该位被清除。

4

RC

0x0

BI(Break Interrupt)
Break中断
用于指示在串行输入数据上检测到中断序列。
输入上的break条件会导致UART接收到仅且一个由0组成的字符。在FIFO模式中,与break条件
相关联的字符通过FIFO传输,当字符位于FIFO顶部时此位置1,读取清除此位。在非FIFO模式中,
此位立即置1并持续到读取此位清除。

3

RC

0x0

FE(Framing Error)
帧错误
用于指示接收器中出现帧错误。当接收器在接收的数据中没有检测到有效的停止位时,就会发生
帧错误。在FIFO模式中,由于帧错误与接收到的字符相关,因此当具有帧错误的字符位于FIFO
顶部时,才会显示该错误。帧错误出现时,UART会尝试重新同步。重新同步是通过假设错误
是由下一个字符的起始位引起的,然后继续接收另一个数据位,以及奇偶检验位和停止位。
需要注意的是,如果发生BI,则此位也置1。
0:无帧错误
1:帧错误
读取LSR清除此位

2

RC

0x0

PE(Parity Error)
奇偶校验错误
如果设置了奇偶校验使能(PEN)位(LCR[3]),则此位用于指示在接收中发生奇偶校验错误
0:无奇偶校验错误
1:奇偶校验错误
读取LSR清除此位

1

RC

0x0

OE(Overrun Error)
溢出错误
如果在读取先前数据之前接收到新的数据字符,则出现此错误。
在非FIFO模式,当从RBR读取先前字符之前接收一个新字符,则此位被置1,发生这种情况时,
RBR中的数据则会被覆盖。
在FIFO模式,当FIFO为满时接收到一个新的字符,则会发生此错误,此时FIFO中的数据被保留,
而接收移位寄存器中的数据丢失。
0:无溢出错误
1:溢出错误
读取LSR清除此位

0

R

0x0

DR(Data Ready)
数据就绪
用于指示在RBR或者接收FIFO中至少包含一个字符。
0:无数据就绪
1:数据就绪
当非FIFO模式中读取RBR或者FIFO模式中FIFO为空时清除此位

11.5.4.11. 0x018 UART_MSR

默认值:0x00000010

UART调制解调器状态寄存器(Modem Status)

位域

类型

默认值

描述

31:5

-

-

-

4

R

0x1

CTS(Line State Of Clear To Send)
可发送状态
用于指示调制解调器控制线cts_n信号的当前状态。
当ctr_n有效时表示调制解调器已准备好UART交换数据。
0: cts_n无效(高电平状态)
1: cts_n有效(低电平状态)
在回环模式中(MCR[4]设为1),CTS如RTS(MCR[1])

3:1

-

-

-

0

RC

0x0

DCTS(Delta Clear To Send)
表示自上次读取MSR后cts_n信号发生了改变
0: 上一次读取MSR后cts_n无变化
1: 上一次读取MSR后cts_n有变化
读取MSR清除此位。在回环模式中(MSR[4]=1),DCTS反映MCR[1](RTS)的变化。
注意:如果未设置此位,并且cts_n信号有效(低电平)以及发生复位(软件复位
或其他情况),如cts_n信号仍然保持有效,那么在移除复位时此位置1。

11.5.4.12. 0x01C UART_SCH

默认值:0x00000000

UART暂存器(Scratch)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

SCRATCH_REG
暂存器
此寄存器供用户作临时存储空间。在UART中没有定义它的目的

11.5.4.13. 0x07C UART_USR

默认值:0x00000006

UART状态寄存器(Status)

位域

类型

默认值

描述

31:5

-

-

-

4

R

0x0

RFF(Receive FIFO Full)
接收FIFO为满
用于指示接收FIFO已完全满
0:接收FIFO未满
1:接收FIFO已满
当接收FIFO不再满时自动清零

3

R

0x0

RFNE(Receive FIFO Not Empty)
接收FIFO非空
用于指示接收FIFO包含一个或多个数据
0:接收FIFO为空
1:接收FIFO非空
当接收FIFO为空时自动清零

2

R

0x1

TFE(Transmit FIFO Empty)
发送FIFO为空
用于指示发送FIFO完全空
0:发送FIFO非空
1:发送FIFO为空
当发送FIFO不再空时自动清零

1

R

0x1

TFNF(Transmit FIFO Not Full)
发送FIFO未满
用于指示发送FIFO未满
0:发送FIFO已满
1:发送FIFO未满
当发送FIFO已满时自动清零

0

R

0x0

BUSY(UART Busy Bit)
UART繁忙位
0:空闲
1:繁忙

11.5.4.14. 0x080 UART_TFL

默认值:0x00000000

UART发送FIFO深度寄存器(Transmit FIFO Level)

位域

类型

默认值

描述

31:9

-

-

-

8:0

R

0x0

TFL(Transmit FIFO Level)
发送FIFO深度
用于指示发送FIFO中的数据数量

11.5.4.15. 0x084 UART_RFL

默认值:0x00000000

UART接收FIFO深度寄存器(Receive FIFO Level

位域

类型

默认值

描述

31:9

-

-

-

8:0

R

0x0

RFL(Receive FIFO Level)
接收FIFO深度
用于指示接收FIFO中的数据数量

11.5.4.16. 0x088 UART_HSK

默认值:0x000000A5

UART DMA握手配置寄存器(DMA Handshake Configuration)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0xA5

HSK(Handshake Configuration)
握手配置
0xA5:DMA wait cycle模式
0xE5:DMA handshake模式

11.5.4.17. 0x0A4 UART_HALT

默认值:0x00000000

UART停止发送寄存器(Halt TX)

位域

类型

默认值

描述

31:8

-

-

-

7

R/W

0x0

DMA_PTE_RX(The Sending Of RX_DRQ)
发送RX_DRQ
在DMA1模式中,当RFL大于或者等于触发深度/接收超时,发送DRQ
在DMA0模式中,如果DMA_PTE_RX=1并且FIFO使能,当RFL大于触发深度时,发送DRQ。
在其他情况下,一旦接收数据有效,发送DRQ。

6

R/W

0x0

PTE(The Sending Of TX_REQ)
发送TX_REQ
在DMA1模式(FIFO使能)中,如果PTE设为1,当TFL小于触发深度时,发送DMA请求。
如果PTE设为0,当FIFO为空,发送DMA请求。当FIFO为满时,DMA请求将停止。
在DMA0模式中,如果PTE设为1并且FIFO使能,当TFL小于触发深度时,发送DMA请求;
如果PTE设为1并且FIFO未使能,当THRE为空时,发送DMA请求。如果PTE设为0,
当FIFO为空时发送DMA请求。

5:3

-

-

-

2

R/WAC

0x0

CHANGE_UPDATE
更改更新
用户使用HALT[1]更改波特率或者LCR配置后,写1来更新配置,等待此位自动清0
来完成更新过程。写0到此位无影响。
1:更新触发,完成更新后自动清零

1

R/W

0x0

CHCFG_AT_BUSY
繁忙状态更改配置使能
用户可在UART繁忙(USB[0]为1)时通过此位使能更改LCR配置以及波特率。
1:UART繁忙时使能更改

0

R/W

0x0

HALT_TX
停止发送
此位用于停止传输以进行测试,以便在使能FIFO时,主控可以填充发送FIFO
0:停止发送未使能
1:停止发送使能
注意:如果FIFO未使能,设置此位对操作没有影响

11.5.4.18. 0x0B0 UART_DBG_DLL

默认值:0x00000000

UART低位除数调试寄存器(DBG DLL)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

DEBUG DLL

11.5.4.19. 0x0B4 UART_DBG_DLH

默认值:0x00000000

UART高位除数调试寄存器(DBG DLH)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

DEBUG DLH

11.5.4.20. 0x0B8 UART_485_DE

默认值:0x000000ff

UART RS485 DE时间寄存器(RS485 DE Time)

位域

类型

默认值

描述

31:8

-

-

-

7:4

R/W

0xf

DE_DAT(Driver Enable De-assertion Time)
DE无效时间T2
Sout结束位到DE信号下降沿之间的时间间隔,以串行时钟周期为单位

3:0

R/W

0xf

DE_AT(Driver Enable Assertion Time)
DE有效时间T1
DE信号上升沿到Sout起始位之间的时间间隔,以串行时钟周期为单位

11.5.4.21. 0x0C0 UART_485_CTL

默认值:0x00000080

UART RS485控制与状态寄存器(RS485 Control and Status)

位域

类型

默认值

描述

31:8

-

-

-

7

R/W

0x1

RS485_CTL_MODE(RS485 Control Mode)
RS485控制模式
0:硬件控制模式。DE信号(RTS)在数据发送时通过内部硬件逻辑进行自动控制,
发送数据前自动使能DE为有效高电平,发送移位寄存器为空且发送FIFO为空,
则自动切换DE为无效低电平。
1:软件控制模式。DE信号(RTS)在数据发送时通过外部软件配置进行手动控制,
配置MCR[1]=0则DE为有效高电平可发送数据,MCR[1]=1则DE为无效低电平可接受数据。

6

R/W1C

0x0

AAD_ADDR_F
AAD地址匹配标志
在AAD模式中,当UART接收到地址字节且与RS485_ADDR_MATCH相同时,该位将置为1。
如果RS485中断使能,则将产生RS485中断
写1清除该位并且复位RS485中断

5

R/W1C

0x0

RS485_ADDR_DET_F
RS485地址检测标志
此位为地址字节检测标志。当UART接收到地址字节时,此位将设为1。如果RS485中断使能,
则将产生RS485中断
写1清除该位并且复位RS485中断

4

-

-

-

3

R/W

0x0

RX_BF_ADDR
地址之前接收
在NMM模式中,如果此位设为1,UART将在接收到一个地址字节之前将所有字节接收到
FIFO中;如果设为0,则不进行此操作
1:接收
0:不接收

2

R/W

0x0

RX_AF_ADDR
地址之后接收
在NMM模式中,如果此位设为1,UART将在接收到一个地址字节之后将所有字节接收到
FIFO中;如果设为0,则不进行此操作
1:接收
0:不接收

1:0

R/W

0x0

RS485_SLAVE_MODE_SEL
RS485从机模式选择
RS485从机模式:
0:标准多点操作(NMM)
1:自动地址检测操作(AAD)
2:保留
3:保留

11.5.4.22. 0x0C4 RS485_ADDR_MATCH

默认值:0x00000000

UART RS485地址匹配寄存器(RS485 Address Match)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

ADDR_MATCH
地址匹配
在AAD模式下使用的匹配地址
注意:仅在AAD模式下可用

11.5.4.23. 0x0C8 BUS_IDLE_CHK

默认值:0x00000000

UART RS485总线空闲查询寄存器(RS485 Bus Idle Check)

位域

类型

默认值

描述

31:8

-

-

-

7

R/W

0x0

BUS_IDLE_CHK_EN
总线空闲查询使能
1:使能总线空闲查询功能
0:未使能总线空闲查询功能

6

R

0x0

BUS_STATUS
总线状态标志
1:繁忙
0:空闲

5:0

R

0x0

ADJ_TIME
总线空闲时间。单位为8*16*Tclk

11.5.4.24. 0x0CC TX_DLY

默认值:0x00000000

UART发送延时寄存器(TX Delay)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

DLY
发送延时
最后一个停止位与下一个开始位之间的延迟时间。单位为16*Tclk。
它用于控制数据发送中两个字节之间的间隔。

11.5.4.25. 0x0D0 UART_DBR

默认值:0x00000000

UART调试寄存器(Debug Register)

位域

类型

默认值

描述

31:8

-

-

-

3

W

0x0

Bypass 预取调试

2:0

-

-

-

11.5.4.26. 0x0FC UART_VERSION

默认值:0x00000100

UART版本号寄存器(Version Number)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R

0x100

UART版本号寄存器