1.简介
USART是一种全双工同步/异步通信协议,是点对点的通信模型,有两根通信线RX和TX,串口协议非常简单,而且单片机往往有串口外设,极大增强了单片机的硬件实力。
2.USART串口协议
2.1 物理层
2.1.1原理
USART通过提前约定传输速率(波特率)来进行数据传输
在异步模式下,仅需将RX和TX交叉连接,如果只是单向数据传输,则只需要一根线。
在同步模式下,还需要一根时钟线。
对于不同的电平标准,还需要电平转换芯片
电平标准 | 1 | 0 |
---|---|---|
TTL | +3.3V/5V | 0V |
RS232 | -3 ~ -15V | +3 ~ +15V |
RS485(差分信号) | +2 ~ +6V | -2 ~ -6V |
2.2协议层
2.2.1串口参数
- 波特率:串口通信的速率(码元/s,二进制调制下1码元 = 1 bit)
- 起始位:数据帧的开始,固定为低电平
- 数据位:有效载荷,1为高电平,0为低电平,低位先行
- 校验位:用于数据验证,分为无校验,奇校验,偶校验
- 停止位:用于数据帧间隔,固定为高电平
2.2.2 串口时序
比较简单,就是由多个数据帧构成
3.总结
USART被广泛用于MCU和计算机之间的通信,其灵活且强大,适于各种中低速通信 。
但是USART速率有限,且没有寻址机制,只能点对点通信,并且需要匹配的波特率