4. 串行设备接口SPI
4.1 SPI结构及寄存器说明
4.2 SPI设计实例
4.2.1 SPI基本功能程序设计
4.2.2 SPI环回程序设计
4.2.3 用SPI控制LCD
4.1 SPI结构及寄存器说明
- 串行设备接口(Serial peripheral interface:SPI)是工业标准串行协议,通常用于嵌入式系统,将微处理器连接到各种片外传感器、转换器、存储器和控制设备
- SPI可以实现主设备或从设备协议,当配置为主设备时,SPI可以连接多达16个独立的从设备,发送数据和接收数据寄存器的宽度可配置为8位或16位
- SPI使用2根数据线、1根控制线和1根时钟线实现串行通信
主入从出(MISO) 主出从入(MOSI)
串行时钟(SCK) 从设备选择(NSS)
- 时钟极性和时钟相位组合
- 时钟极性为0时初始电平为低,为1时初始电平为高时钟相位为0时第1个边沿采样,为1时第2个边沿采样
- SPI由收发数据和收发控制两部分组成
- 收发数据部分包括发送缓冲区、接收缓存区和移位寄存器
- 收发控制部分包括控制状态寄存器、通信电路、主控制电路和波特率发生器
- NSS是一个可选的引脚功能是用作“片选引脚”用来选择从设备,通常配成通用I/O引脚
- 当SPI连接多个从设备时MOSI、MISO和SCK连接所有的从设备,但每个从设备的NSS引脚必须连接到主设备的一个通用I/O引脚
- SPI使用的GPIO引脚