SPI总线协议

同步外设接口(serial peripheral interface‚SPI)是由摩托罗拉公司开发的全双工同步串行总线。SPI 是一种串行同步通信协议‚由1个主设备和1个或多个从设备组成‚主设备启动一个与从设备的同步通信‚从而完成数据的交换。

SPI 有 4 个 I/O 引脚,它们是主机输入/从机输出数据线 MISO;主机输出/从 机输入数据线 MOSI;串行时钟SCK和低有效的选择线 SS

SPI总线提供了 3 种传输模式:轮询模式、中断模式、DMA模式。

SPI 接口由 SDI (串行数据输入)‚SDO (串行数据输出)‚SCK(串行移位时钟)‚CS (从使能信号)四种信号构成‚CS 决定了惟一的与主设备通信的从设备‚如没有 CS 信号‚则只能存在一个从设备‚主设备通过产生移位时钟来发起通信。通信时‚数据由 SDO 输出‚SDI输入‚数据在时钟的上升沿或下降沿从 SDO 输出‚在紧接着的下降沿或上升沿由 SDI 读入‚这样经过8/16次时钟改变‚完成8/16位数据的传输。

SPI总线特点
采用主-从模式(Master-Slave)的控制方式
SPI规定了两个SPI设备之间通信必须由主设备Mater来控制次设备Slave。一个Master设备可以通过提供时钟Clock和对Slave设备进行片选(Slave Select)来控制多个Slave设备,时钟Clock由主设备来控制,没有Clock,Slave设备不能工作。

采用同步方式(Synchronous)传输数据
Master设备会根据将要交换的数据来产生相对应的时钟脉冲(Clock Pulse),时钟脉冲组成了时钟信号(Clock Signal),时钟信号通过时钟极性(CPOL)和时钟相位(CPHA)控制着两个SPI设备间何时数据交换以及何时对接收到的数据进行采样,来保证数据在两个设备之间是同步传输的。
优点
①支持全双工通信
②通信简单
③数据传输速率快
缺点
没有指定的流控制,没有应答机制确认是否接收到数据,所以和IIC总线协议比较在数据可靠性上有一定的缺陷。

SPI四种工作模式
SPI 有四种工作模式,通过串行时钟极性(CPOL)和相位(CPHA)的搭配来得到四种工作模式:
①CPOL=0,串行时钟空闲状态为低电平。
②CPOL=1,串行时钟空闲状态为高电平,此时可以通过配置时钟相位(CPHA)来选择具
体的传输协议。
③CPHA=0,串行时钟的第一个跳变沿(上升沿或下降沿)采集数据。
④CPHA=1,串行时钟的第二个跳变沿(上升沿或下降沿)采集数据。

这四种工作模式如图所示:
在这里插入图片描述IIC和SPI的异同

相同点
①均采用串行、同步的方式
②均采用TTL电平,传输距离和应用场景类似
③均采用主从方式工作

不同点
①IIC为半双工,SPI为全双工
②IIC有应答机制,SPI无应答机制
③IIC通过向总线广播从机地址来寻址,SPI通过向对应从机发送使能信号来寻址
④IIC的时钟极性和时钟相位固定,SPI 的时钟极性和时钟相位可调

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值