0ch - LineControlRegister_r 8 0x00 R/W 传输数据的控制寄存器
10h - ModemControlRegister_r 8 0x00 W Modem 控制寄存器
14h - LineStatusRegister_r 8 0x60 R 传输数据的状态寄存器
18h - ModemStatusRegister_r 8 0x00 R Modem 状态寄存器
在UART 中,有些寄存器共用同样的地址空间。通过Line Control Register_r 寄存器的第七比特位(SEL)来选择共用地址的寄存器。
2.6.3.1 FIFO 控制寄存器(FIFO Control Register (FCR))
FIFO 控制寄存器用于设置Rx 和Tx FIFO 的触发级,以及清除FIFO 操作。
表2.19 FIFO 控制寄存器
Bit # 名称 读/写 描述
0 写 保留位
1 ClearReceiverFIFO 写 ‘1’:清除receiver FIFO 中的内容,复位逻辑;但它不清除移位寄存器中的内容
‘0’:receiver FIFO 正常操作
2 ClearTransmitterFIFO 写 ‘1’:清除transmitter FIFO 中的内容,复位逻辑;但它不清除移位寄存器中的内容
‘0’:transmitter FIFO 正常操作
3 写 保留位
5-4 TransmitterFIFOInterruptTriggerLevel 写 定义transmitter FIFO 的trigger level:
‘00’:0 byte
‘01’:2 byte
‘10’:4 byte
‘11’:8 byte
7-6 ReceiverFIFOInterruptTriggerLevel 写 定义receiver FIFO 的trigger level:
‘00’:1 byte
‘01’:4 byte
‘10’:8 byte
‘11’:14 byte
bit[2:1]被置“1”后将自动清零。所以不能读出其为“1”的情况。
2.6.3.2 行控制寄存器(Line Control Register (LCR))
行控制寄存器用于设置接受和发送的数据结构。
表2.20 行控制寄存器
Bit # 名称 读/写 描述
1-0 NumberOfBits 读/写 选择每个传输数据的比特数
00:5bits
01:6bits
10:7bits
11:8bits
2 NumberOfGeneratedStopBits 读/写 定义停止位的数目
0: 一个停止位
1: 当传输数据为5 个比特时,停止位是1.5 比特。其余情况为2 个停止位。
3 ParityEnable 读/写 奇偶校验位使能
0:无奇偶校验位
1:有奇偶校验位
4 EvenParitySelect 读/写 奇偶校验位
0:奇校验
1: 偶校验
5 StickParityBit 读/写 固定奇偶校验位
0:固定奇偶校验位不使能
1:校验使能且奇校验时,固定校验位为‘1’校验使能且偶校验时,固定校验位为‘0’
6 out_BreakControlBit 读/写 Break 控制位
1:串行数据输出为‘0’
0:串行数据输出正常
7 SEL 读/写 Divisor Latch 访问位 ARM嵌入式系统的数据采集传输系统研究+源程序(11):http://www.youerw.com/tongxin/lunwen_2633.html