UART
通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)。
一、定义
UART是一种通用串行数据总线,用于异步通信。该总线实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信。
二、通信协议
UART作为异步串口通信协议的一种,工作原理是将传输数据的每个字符一位接着一位传输。
传输一帧中格式为:起始位、数据位、奇偶校验位、停止位、空闲位
其中各位意义如下:
起始位:先发出一个逻辑“0”的信号,表示传输字符的开始。
数据位:紧接着从起始位后,数据位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。
奇偶校验位:数据位加这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。
停止位:是一个字符数据的结束标志。
空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。
波特率:是衡量数据传送速率的指标。表示每秒钟传送的符号数(symbol)。一个符号代表的信息量(比特数)与符号的阶数有关。例如传输使用256阶符号,每8bit代表一个符号,数据传送速率为120字符/秒,则波特率为120*8=960bit/s。
三、基本结构
①输出缓冲寄存器:它接收CPU从数据总线上送来的并行数据,并加以保存。
②输出移位寄存器:它接收从输出缓冲器送来的并行数据,以发送时钟的速率把数据逐位移出,即将并行数据转换位串