目录
三种常用通信接口的总结比较
| 接口引脚 | 数据同步方式 | 数据传输方向 | |
| UART | TXD:发送端 RXD:接收端 GND:公共地 | 异步通信 | 全双工 |
| IIC | SCL:同步时钟 SDA:数据输入/输出端 | 同步通信 | 半双工 |
| SPI | SCK:同步时钟 MISO:主机输入,从机输出 MOSI:主机输出,从机输入 CS:片选信号 | 同步通信 | 全双工 |

一、IIC
1. 由时钟线SCL和数据线SDA组成,并且都接上拉电阻,确保总线空闲状态为高电平;
起始信号:当SCL为高电平时,SDA从高电平变为低电平
停止信号:当SCL为高电平时,SDA从低电平变为高电平
应答信号:上拉电阻影响下SDA默认为高,而从机拉低SDA就是确认收到数据即ACK,否则NACK
2. 数据先发送高位,以字节(8bit)传输
3.数据有效性:数据线在SCL高电平期间应保持稳定
3. 空闲状态:SCL和SDA都为高电平
EEPROM写步骤:
写入数据时序图:
(1)传输通讯地址(传输方向位为写)
(2)传输内存地址
(3)传输数据内容
EEPROM读步骤:
读取数据时序图:
读取数据步骤仅比写入数据多一步改变通讯地址中的数据传输方向,因此将上图中的步骤加入图2、图3之间即为完整的时序图。
二、SPI
1.SPI相关引脚:
MOS1(输出数据线)、MISO(输入数据线)、SCK(时钟)、NSS(片选)
2.SPI的工作模式:
决定数据的有效性
时钟极性(CPOL)
没有数据传输时时钟线的空闲状态电平
0:SCK在空闲状态保持低电平
1:SCK在空闲状态保持高电平
时钟相位(CPHA)
时钟线在第几个时钟边沿采样数据
0:SCK的第一(奇数)边沿进行数据位采样,数据在第一个时钟边沿被锁存
1:SCK的第二(偶数)边沿进行数据位采样,数据在第二个时钟边沿被锁存
根据时钟极性和相位的不同有4种工作模式:
| SPI工作模式 | CPOL | CPHA | SCL空闲状态 | 采样边沿 | 采样时刻 |
| 0 | 0 | 0 | 低电平 | 上升沿 | 奇数边沿 |
| 1 | 0 | 1 | 低电平 | 下降沿 | 偶数边沿 |
| 2 | 1 | 0 | 高电平 | 下降沿 | 奇数边沿 |
| 3 | 1 | 1 | 高电平 | 上升沿 | 偶数边沿 |
举例:
(传输顺序为先传输MSB,帧格式为8bit,二者都可以自行配置)
(1)时钟极性0、时钟相位0:

(2)时钟极性0、时钟相位1:

(3)时钟极性1、时钟相位0:

(4)时钟极性1、时钟相位1:

FLASH:
用于存储数据的半导体器件,它具有容量大,可重复擦写、按“扇区 / 块”擦除、掉电后数据可继续保存的特性。
FLASH的物理特性:只能写0,不能写1。若当前位置非1,写前必擦。
FLASH读取步骤:

读取时序图:

FLASH页写步骤:
(注:写入数据前,检查内存空间情况是否满足,不满足需先擦除再写入)

页写时序图:

三、UART
UART协议构成:
启动位:必须占1个位长,保持逻辑0电平
有效数据位:可选5、6、7、8、9个位长,LSB在前,MSB在后
校验位:可选占1个位长,也可以没有该位
停止位:必须有,可选占0.5、1、1.5、2个位长,保持逻辑1电平
时序图:
本文详细总结了三种常用通信接口SPI、IIC和UART的特点和时序图,包括起始和停止信号、数据传输方向、数据有效性以及具体的应用场景如EEPROM的读写、SPI的四种工作模式和FLASH的读写操作。
7614

被折叠的 条评论
为什么被折叠?



