同步与异步
同步:两个通信机器时钟一致
异步:发送方和接收方之间没有公共时钟
TTL电平(1、2、3)
- TTL :全双工 (5V系统,逻辑1: 2.4V–5V 逻辑0: 0V–0.5V)。TTL指双极型三极管逻辑电路。
- 信号0对应0V,1对应3.3V或者5V,与单片机、SOC的IO电平兼容
- 通信距离较短,大概在几米
1、UART
- 异步
- 全双工
- 低速:115200bps —— 14.4KB/s、9600bps —— 1.2KB/s(协议上无速度限制,但当波特率很大时,时钟的误差就容易导致乱码或接收数据错误)
- TTL电平
- 经典电路:
2、IIC
- 同步
- 半双工
- 低速:
- 通信距离:理想距离15M、实际一般最多几米,通常是板间通信
3、SPI
- 同步
- 高速:50Mbps=5.9MB/s
- 通信距离:一般在15cm以下,板间通信
- 全双工
- TTL电平
- 经典电路:
SCLK 时钟同步,MOSI 作为发送,MISO 作为接收,NSS片选(可以挂多个设备)
4、RS232 (电平标准)
- 协议与UART相同,只是逻辑电平不同
- 异步
- 低速:50b/s、75b/s、110b/s、150b/s、300b/s、600b/s、1200b/s、2400b/s、4800b/s、9600b/s、19200b/s
- 通信距离:RS232理论最大的通信距离约为几十米
- 节点数量:1对1
- 全双工
- RS232电平:
- 经典电路:
5、RS485(电平标准)
-
协议与UART相同,差分逻辑电平标准
-
异步
-
低速:RS485的最高数据传输速率为10Mbps=1250kB/s。
-
长距离:RS485最大通信距离约为1200m
-
半双工:通信需要借助芯片将电平转换为差分电平,在一个时刻只能收或者发
-
节点数量:RS-485在总线上是允许连接多达128个收发器。
-
RS485电平:
-
经典电路:
CAN
-
ISO11898标准
-
低速:CAN最高数据传输速率为1Mbps = 128KB/s
-
超长距离:CAN总线的数据传输距离高达10千米
-
半双工:CAN是半双工的。收发数据要分时进行。不管CAN网络上挂多少设备,在同一时刻只能有1个发送数据。如果有多个需要同时发送则只有优先级别高的先发送,其它等待。
-
节点数量:理论上最多有127个节点 总线两端120R电阻
-
CAN总线电平:差分电平标准
-
经典电路: