USART

通信协议

串行通信

  • 按数据传输方向分类:
    • 单工:只发不收,或只收不发,例 打印机,广播电视
    • 半双工:IIC,单总线(1-wire)
    • 全双工:SPI、USART
  • 按通信方式分类:
    • 同步通信:带时钟同步信号,比如 SPI,IIC,USART(单独配置时钟线)
    • 异步通信:不带时钟同步信号,比如 UART,USART,单总线

并行通信

  • CPU内部的并行处理、内存与CPU之间的数据传输等。

传输速率

  • IIC总线的工作速度分为3种版本:
    • S(标准模式):100Kbps,即 100/8 = 12.5KB/s
    • F(快速模式):400Kbps,即400/8 = 50KB/s
    • HS(高速模式):3.4Mbps,即3.4M/8 = 435KB/s
    • 超高速模式:5Mbit/s,即5M/8 = 525KB/s
  • SPI:
    • 全双工同步传输,速度约有50Mbps,即约5.9MB/s
  • UART:
    • 无限制,速度取决于波特率,常用9600bps(1.2KB/s)和115200bps(14.4KB/s)
  • RS232:
    • RS232传输距离有限,最大传输距离标准值为15米,且只能点对点通讯,最大传输速率最大为20KB/s。
  • RS485:
    • RS485最大无线传输距离为1200米。最大传输速率为10Mbps(1250KB/s),在100Kb/S(12.5KB/s)的传输速率下,才可以达到最大的通信距离。
  • CAN:
    • 距离小于40M:速度有1Mbps,即约128KB/s
    • 距离大于40M小于10KM,速度低于5Kbps
  • SDIO:
    • SD内存卡接口基础上的接口
    • 10Mbps以上
  • HSMI:
    • HDMI2.0传输速率为18Gbps(2.25GB/s)
    • HDMI1.3传输速率为10.2Gbps(1.275GB/s)
  • LVDS:
    • 标准传输速率为655Mbps,理论上最快传输速率达1.923Gbps

UART 和 USART

UART(通用异步收发器)、USART(通用同步异步收发器)。

对于大容量STM32F10x系列芯片,分别有3个USART和2个UART。

两者连接方式相同,USART 增加了时钟控制线。

同步通信功能可以把USART当做SPI来用,比如用USART来驱动SPI设备。

RS232、RS485、RS422

原生串口:

  • 原生串口是TTL->TTL,只规定数据以什么格式发送,未规定电平电压
  • GPS模块,串口转wifi模块,HC04蓝牙模块
  • 不同的电平标准设备之间不能通信

RS协议:

  • Recommended Standard 是推荐标准

  • RS232、RS485 都是电气层协议,在串口的基础上规定电平标准

  • 不同设备的电平电压不同,串口不能直接连接

  • 项目中不直接使用原生串口通信,使用 有RS协议的串口 更安全高效

RS232:

  • 电脑的USB串口是RS232电平,单片机芯片是TTL电平
  • +3 ~ +15V 逻辑0,-3 ~ -15V逻辑1
  • 节点数为 1 发 1 收
  • 接口的信号电平值较高,易损坏接口电路的芯片
  • 传输速率较低,在异步传输时,波特率为20Kbps。现在由于采用新的UART 芯片16C550 等,波特率达到115.2Kbps。