一、SPI简介
SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的串行通信总线;并且在芯片的管脚上只占用四根线,分别是MISO(主设备输入从设备输出)、MOSI(主设备输出从设备输入)、SCLK(时钟)、CS(片选)。SPI使用引脚比较少而且分布方便。
二、寻址方式
当主设备和某个从设备进行通信时,主设备需要先向从设备的片选线上发送使能信号(高电平或者低电平,根据从机而定)表示选中该从设备。
三、通信过程
SPI总线在进行数据传送时,先传送高位,然后传送地位;数据线为高电平表示逻辑 '1',低电平表示逻辑‘0’;一个字节传送完成后无需应答既可以开始下一个字节的传送;SPI总线采用同步方式工作,时钟线在上升沿或者下降沿时发送器向数据线上发送数据,在紧接着的下降沿或者上升沿时接收器从数据线上读取数据,完成以为数据传送,八个时钟周期既可以完成一个字节数据的传送。
五、极限和相位
SPI总线有四种不同的工作方式,取决于极限(CPOL)和(CPHL)这两个因素。
1、 CPOL表示SCLK空闲时的状态:CPOL=0,空闲时SCLK为低电平,CPOL=1,空闲时SCLK为高电平。
2、CPHA表示采样时刻:CPHA=0,每个周期的第一个沿采样,CPHA=1,每个周期的第二个时钟沿采样。
3、 CPOL和CPHA,分别都可以是0或时1,对应的四种组合就是:
六、SPI与I2C的异同
1、相同点
(1)均采用串行、同步的方式;
(2)均采用TTL电平(高电平为1,低电平为0),传输距离和应用场景类似;
(3)均采用主从方式工作。
2、不同点
(1)I2C为半双工,SPI为全双工;
(2)I2C有应答机制,SPI无应答机制;
(3)I2C通过向总线广播从机地址来寻址,SPI通过向对应从机发送使能信号来寻址;
(4)I2C的时钟极性和时钟相位固定,SPI的时钟极性和时钟相位可调。
版权声明:本文为CSDN博主「ScorpioMan_Rf」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_37806005/article/details/120299038
一、SPI简介
SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的串行通信总线;并且在芯片的管脚上只占用四根线,分别是MISO(主设备输入从设备输出)、MOSI(主设备输出从设备输入)、SCLK(时钟)、CS(片选)。SPI使用引脚比较少而且分布方便。
二、寻址方式
当主设备和某个从设备进行通信时,主设备需要先向从设备的片选线上发送使能信号(高电平或者低电平,根据从机而定)表示选中该从设备。
三、通信过程
SPI总线在进行数据传送时,先传送高位,然后传送地位;数据线为高电平表示逻辑 '1',低电平表示逻辑‘0’;一个字节传送完成后无需应答既可以开始下一个字节的传送;SPI总线采用同步方式工作,时钟线在上升沿或者下降沿时发送器向数据线上发送数据,在紧接着的下降沿或者上升沿时接收器从数据线上读取数据,完成以为数据传送,八个时钟周期既可以完成一个字节数据的传送。
五、极限和相位
SPI总线有四种不同的工作方式,取决于极限(CPOL)和(CPHL)这两个因素。
1、 CPOL表示SCLK空闲时的状态:CPOL=0,空闲时SCLK为低电平,CPOL=1,空闲时SCLK为高电平。
2、CPHA表示采样时刻:CPHA=0,每个周期的第一个沿采样,CPHA=1,每个周期的第二个时钟沿采样。
3、 CPOL和CPHA,分别都可以是0或时1,对应的四种组合就是:
六、SPI与I2C的异同
1、相同点
(1)均采用串行、同步的方式;
(2)均采用TTL电平(高电平为1,低电平为0),传输距离和应用场景类似;
(3)均采用主从方式工作。
2、不同点
(1)I2C为半双工,SPI为全双工;
(2)I2C有应答机制,SPI无应答机制;
(3)I2C通过向总线广播从机地址来寻址,SPI通过向对应从机发送使能信号来寻址;
(4)I2C的时钟极性和时钟相位固定,SPI的时钟极性和时钟相位可调。
版权声明:本文为CSDN博主「ScorpioMan_Rf」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_37806005/article/details/120299038
暂无评论