SPI 和 I2C(IIC)是同步传输协议,特征是:设备有主机(master)和从机(slave)的区分;主机在通讯时发送时钟信号。 SPI 的信号: CS: 从机片选信号,表示主机将于该选定的从机通讯。低电平有效。在多从机的系统中,主机控制多条 CS 信号线,每条连接到一个从机。 SCK: 串行时钟线,从主机连接到每一个从机。 MOSI: 主出从入数据线。SPI 的数据线上,数据是单向的。因此需两条信号线。 MISO: 主入从出数据线。 在 SPI 系统中,只允许有一个主机。如果主机在工作时发现任何 CS 线被其他设备拉低,将报告一个系统错误,并退出运行。 I2C 的特点和信号: I2C 也可以是多从系统,它是通过地址信息来选择从机的。因此,它去了片选信号线。 I2C 允许在同一系统中有多个主机,他通过一套仲裁协议来解决主机的冲突。在一个系统中,允许设备在主机和从机间转换角色。 SCL: 时钟信号线。 SDA: 数据信号线。 I2C 通过复杂的协议减少了连接线,并允许多主多从。但它的代价是低的传输速度。 I2C 定义的传输模式: * 标准模式:最高 100kbit/s,双向; * 快速模式:最高 400kbit/s,双向,兼容标准模式; * 快速模式Plus:最高 1Mbit/s,双向,兼容前两种模式; * 超级快速模式:最高 5Mbit/s,单向(主机只发送),不兼容,不支持多主。 在实际使用中,主要是标准模式和快速模式。 UART 是一种异步串行通讯协议,它通过收发双方精准的本地时钟来定时采样或切换信号电平。 UART 的收发双方是一对一的,且无主从之分。任何一方都可以在任何时刻发送数据。 UART 的双方必须采用事先约定的相同“波特率”(定时标准)来通讯。目前也有一些接收方通过对固定信号的检测来确定波特率的技术,但应用不广泛。 UART 的信号: RXD: 接收信号线 TXD: 发送信号线 通讯的双方是将此二线交叉对接的。 USART 是对 UART 的扩展。它除了支持异步传输之外,也支持同步传输。但目前较少应用。
1,068
社区成员
6,263
社区内容
加载中
试试用AI创作助手写篇文章吧