前言:
作为Motorola的又一伟大发明的SPI总线通信协议,在理解和应用上也是十分复杂且难以理解,博主想通过这篇文章想把SPI的原理和应用大概讲一下,同时也是记录自己对于SPI的学习和理解。
SPI概述:
SPI 是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。SPI 接口主要应用在 EEPROM,FLASH,实时时钟,AD 转换器,还有数字信号处理器和数字信号解码器之间。
SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。
SPI信号线:

SCK:主机的时钟线,由主机产生脉冲,一个脉冲传输、接收一位数据,另名:C SCL SCLK
CS:使能控制端(主机控制从机),选定哪个从机可以工作,当有多个从机连接主机的SPI总线时,从机的CS分别连接主机的不同引脚,主机通过控制引脚输出低电平(通常是低电平)来选中指定从机进行通信,输出高电平来结束或者不选中从机通信。
MOSI:Master Output Slave Input,主机输出,从机输入
MISO:Master Input Slave Output, 主机输入,从机输出

这里我们重点讲一下这张图,在SPI中,这里我们考虑一主多从模式,当连接在主机上的从机的CS输出低电平时,从机被选中指定与主机进行SPI通信。
主机的SCLK每发出一个脉冲,主机的移位寄存器高位移出一位数据,(高位先行,SPI通常是高位先行),通过MOSI线移位数据到从机的移位寄存器低位,同时,从机的移位寄存器高位移位一位数据,通过MISO线移位到主机的移位寄存器的低位,这样主从机的一位数据就交换完成。
如此往复八次脉冲,主机和从机的移位寄存器的八位数据就成功交换。
SPI工作原理总结:
硬件上为4根线:SCLK(传输脉冲),CS(片选使能线),MISO(主机输入,从机输出端线),MO

最低0.47元/天 解锁文章
2853

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



