奇偶校验是用来验证数据的正确性。奇偶校验是通过修改每一发送字节来工作的。在偶校验中,因为奇偶校验位会被相应的置1或0(一般是最高位或最低位),所以数据会被改变以使得所有传送的数位(含字符的各数位和校验位)中“1”的个数为偶数;在奇校验中,所有传送的数位(含字符的各数位和校验位)中“1”的个数为奇数。奇偶校验可以用于接受方检查传输是否发送生错误——如果某一字节中“1”的个数发生了错误,那么这个字节在传输中一定有错误发生。如果奇偶校验是正确的,那么要么没有发生错误要么发生了偶数个的错误。
停止位是在每个字节传输之后发送的,它用来帮助接受信号方硬件重同步。
RS-232在传送数据时,并不需要另外使用一条传输线来传送同步信号,就能正确的将数据顺利传送到对方,因此叫做“异步传输”,简称UART(Universal Asynchronous Receiver Transmitter),不过必须在每一笔数据的前后都加上同步信号,把同步信号与数据混和之后,使用同一条传输线来传输。比如数据11001010被传输时,数据的前后就需加入Start(Low)以及Stop(High)等两个比特,值得注意的是,Start信号固定为一个比特,但Stop停止比特则可以是1、1.5或者是2比特,由使用RS-232的传送与接收两方面自行选择,但需注意传送与接受两者的选择必须一致。
2.6.2 UART工作原理
UART 通过RS-232 协议和外设间进行串行通信。UART 收发字符位数是可配置的,可以是5-8 位。在发送时,数据从数据总线上写入16个字节深度的发送FIFO,然后再被送入移位寄存器转换成串行数据从TXD 引脚输出。在接收时,数据从RXD 引脚串行地接收,先送入接收移位寄存器,然后再送入16 个字节深度的FIFO。接收FIFO 和发送FIFO 都具有可屏蔽的、可用软件配置触发级的中断。当FIFO 中的数据量达到预先设定的触发级时,产生中断。
UART 传输波特率取决于输入时钟和软件可配置的分频器。可以配置停止位数目,奇/偶校验。在接收时,可以检测帧错误、空闲状态、停止位、奇偶校验错误和溢出错误。
另外,通过外围电路将红外信号转变成电信号(接收信息时)或将电信号转变成红外信号(发送时),然后再和UART 进行串行通信,这样就可以支持低速红外通信。
图2.8 UART串口接口电路
图2.9 UART模块功能框图
2.6.3 寄存器描述
基地址 UART1: 0x10004000
UART2: 0x10005000
表2.18 UART寄存器地址
偏移地址 SEL* 名字 宽度 复位值 读/写 描述
00h 1 DivisorLatcheByte1_r 8 0x00 R/W 波特率设置低八位寄存器
0 Receiver FIFO 8 0x00 R 接收器FIFO地址
0 Transmitter FIFO 8 0x00 W 传输器FIFO 地址
04h 1 DivisorLatcheByte2_r 8 0x00 R/W 波特率设置高八位寄存器
0 InterruptEnableRegister_r 8 0x00 R/W 中断使能寄存器
08h - FIFOControlRegister_r 8 0xc1 W FIFO 控制寄存器
- InterruptIdentificationRegister_r 8 0x01 R 中断识别寄存器
- 上一篇:基于白光LED的室内可见光通信系统发射端电路设计仿真
- 下一篇:电路板故障检测仪软件设计仿真+流程图
-
-
-
-
-
-
-
大众媒体对公共政策制定的影响
河岸冲刷和泥沙淤积的监测国内外研究现状
java+mysql车辆管理系统的设计+源代码
乳业同业并购式全产业链...
中考体育项目与体育教学合理结合的研究
酸性水汽提装置总汽提塔设计+CAD图纸
十二层带中心支撑钢结构...
当代大学生慈善意识研究+文献综述
杂拟谷盗体内共生菌沃尔...
电站锅炉暖风器设计任务书