UART
异步 全双工 三根线
TX - RX
RX - TX
GND - GND
起始位 D0 - D7 奇偶校验位 停止位
波特率是bit/s 9600就是每bit花费1.04ms
UART, RS232, RS485区别是电压不同
I2C
同步 半双工 就一个时间线SCL一个数据线SDA 挂在总线上 可以做主可以做从
时钟线又主设备控制
start addr wr [a] D [a] D ... [a] D [a] P
start addr rd [a] [D] A [D] ... A [d] NA P
scl从高到低 代表start
scl为高的时候,sda必须是稳定的,代表传输的8位数据,第9位时接收方拉低电平代表ask接收成功
scl为高的时候,sda低变高代表停止P,数据传输完成后,主设备发送停止信号,释放总线以便其他设备使用。
SPI
SPI是一种 同步 串行 通信协议
全双工、高速率和简单硬件结构 优于UART
包括MISO、MOSI、SCLK和SS四条线
通过时钟极性和相位配置实现不同模式的通讯
支持多从机模式
但缺乏硬件级别的错误检查协议
1. 多NSS 多个片选信号
2. 菊花链模式 MOSI连上一个的MISO , 后面的优先级低