SPI 串行外围设备

216 阅读2分钟

SPI:

串行外围设备接口,高速 全双工 同步 通信总线。 广泛用于ADC,LCD设备与MCU(微控制器,单片机)要求通信速率较高的场合。SPI在芯片管教上只占用四根线,节约芯片管脚。

MOSI主输出从输入 MISO主输入从输出 SCLK时钟 cs片选信号

当有多个SPI设备与MCU相连时,每个设备的片选信号线和MCU的引脚单独相连。而其他三根线多个设备并联。

SPI优缺点:

速度快, 经常和flash连接。

缺点抗干扰能力差,没有I2C的应答机制。

SPI协议特点:

主从模式: 一个主机设备通过提供SCLK信号,CS信号来控制多个丛集设备。从机无法主动给主机设备发送数据,因此SPI是一种时钟驱动的协议,没有SCLK无法正常工作。

同步传输:

主机设备在交换数据时候输出信号时钟,相位CLK_PHA 和极性CLK_POL 的不同配置 组成了4种SPI模式。开始高电平 奇数检测类似这样等等四种方式。 只要主机和从机选择同样的配置,即可完成同步数据传输。

数据交换: SPI设备会同时发送和接收1bit数据,完成数据交换。

SPI功能模块:

SPI协议读写操作, 通过寄存器操作Tx/Rx FIFO。

SPI控制器工作模式:

主机模式: 通过片选信号,实现读取和写入从机设备。

从机模式: 控制器接收来自外部主机的数据,同时输出一个应答,sclk锁存mosi信号上的数据,

多主模式: 当控制器处于无效状态时候。

PL部分的逻辑搭建SPI接口,通过PS端的AXI总线来控制这个SPI接口进行通信。