接口协议(3) - UART
作者:互联网
UART(Universal Asynchronous Receiver and Transmitter),通用异步收发器(串口),还有一种USART(Universal Synchronous Asynchronous Receiver and Transmitter),通用同步异步收发器,后者比前者多了同步时钟信号,两者支持全双工,半双工,单向通信中的一种或几种。一般是LSB通信,有些支持可配置的MSB/LSB通信。
1. 通信速率
有很多种不同速率,常见的有4800、9600、38400、115200、256000 bps等波特率,查了一些厂商的数据手册,常见的可支持到4/4.5/5Mbps。
2. UART接口
有0(低电平)和1(高电平)两种数据状态,在空闲时,数据线应该保持在逻辑高电平状态。
2.1 DB9
DTE,数据终端(Master)
DCE,数据设备(Slaver)
ID | Name | Symbol | Type | Comment |
1 | 载波检测 | DCD | Output | Data Carrier Detect,数据载波检测,用于DTE 告知对方,本机是否收到对方的载波信号。 |
2 | 接收数据 | RXD | Input | Receive Data,数据接收信号,即输入。 |
3 | 发送数据 | TXD | Output | Transmit Data,数据发送信号,即输出。两个设备之间的 TXD 与 RXD 应交叉相连。 |
4 | 数据终端就绪 | DTR | Output | Data Terminal Ready,数据终端就绪,用于DTE向对方告知本机是否已准备好。 |
5 | 地线 | GND | - | Ground,信号地线。 |
6 | 数据设备就绪 | DSR | Input | Data Set Ready,数据发送就绪,用于DCE告知对方本机是否处于待命状态。 |
7 | 请求发送 | RTS | Output | Request To Send,请求发送,DTE请求DCE本设备向DCE端发送数据。 |
8 | 允许发送 | CTS | Input | Clear To Send,允许发送,DCE回应对方的RTS发送请求,告知对方是否可以发送数据。 |
9 | 响铃指示 | RI | Input | Ring Indicator,响铃指示,表示DCE端与线路已接通。 |
2.2 流控制
示例
2.3 TXD/RXD
示例
3. 起始信号
1 bit逻辑0表示开始。
4. 结束信号
可选0.5/1/1.5/2 bit个逻辑1表示结束。
5. 数据位
可选5/6/7/8 bit逻辑位,如ASCII是7位,扩展BCD码是8位,LSB(小端)传输,有些器件可配置MSB/LSB。
6. 校验位
ID | Name | Type | Comment |
0 | 奇校验 | odd | 奇校验要求有效数据和校验位中"1"的个数为奇数。 |
1 | 偶校验 | even | 偶校验要求有效数据和校验位中"1"的个数为偶数。 |
2 | 0校验 | space | 0校验是不管有效数据中的内容是什么,校验位总为"0"。 |
3 | 1校验 | mark | 1校验是不管有效数据中的内容是什么,校验位总为"1"。 |
5 | 无校验 | noparity | 无校验则没有校验位。 |
7. 空闲位
处于逻辑1状态,表示当前线路上没有数据。
8. 工作原理
一般是一帧一帧发送的,而不是连续发送,一帧即起始位 + 数据位 + 校验位 + 停止位。
8.1 TXD/RXD
示例
8.2 流控制
示例
9. IrDA
现代UART控制器一般也支持IrDA红外的收发解析。
标签:接口协议,UART,Data,DCE,校验,发送,校验位,数据 来源: https://www.cnblogs.com/phoebus-ma/p/16657711.html