全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 接口/总线/驱动 >

SPI接口的基本原理

时间:2023-05-19 14:45

人气:

作者:admin

标签: 微控制器  存储器  转换器 

导读:SPI接口的基本原理- 串行外围设备接口(Serial Peripheral Interface,SPI),用来在微控制器和外围设备芯片之间提供一个低成本、易使用的接口(SPI有时候也被称为4线接口)。这种接口可以用来连接...

1.SPI接口原理

串行外围设备接口(Serial Peripheral Interface,SPI),用来在微控制器和外围设备芯片之间提供一个低成本、易使用的接口(SPI有时候也被称为4线接口)。这种接口可以用来连接存储器(存储数据)、A/D转换器、D/A转换器、实时时钟日历、LCD驱动器传感器等等。

SPI主要使用四个信号:主机输出/从机输入(MOSI)、主机输入/从机输出(MISO)、串行SCLK或SCK、外设芯片(CS)。有些处理器有SPI接口专用的芯片选择,称为从机选择SS。

MOSI信号由主机产生,从机接受。在有些芯片上,MOSI只被简单地标为串行输入(SI),或者串行数据输入SDI。MISO信号由从机产生,不过还是在主机的控制下产生的。在一些芯片上,MISO有时被称为串行输出(SO),或者串行数据输出(SDO)。外设片选信号通常只是由主机的备用I/O引脚产生。

与标准的串行接口接口不同,SPI是一个同步协议接口,所有的传输都参照一个共同的时钟,这个同步时钟信号由主机产生,接收数据的外设使用时钟来对串行比特流的接受进行同步化。可以将多个具有SPI接口的芯片连到主机的同一个SPI接口上,主机通过控制从设备的片选输入引脚来选择接受数据的从设备。

2.SPI传输过程

wKgZomRnGq2Aa3n5AAAk2QfJmFE358.jpg

主机和外设都包含一个串行移位寄存器,主机通过它的SPI串行寄存器写入一个字节来发起一次传输。寄存器是通过MOSI信号线将字节传送给外设,外设也将自己的移位寄存器中的内容通过MISO信号线返回给主机。这样,两个移位寄存器中的内容就被交换了。外设的写操作和读操作是同步完成的,因此SPI成为一个很有效的协议。

如果只是进行写操作,主机只需忽略收到的字节;反过来,如果主机要读取外设的一个字节,就必须发送一个空字节来引发从机的传输。

当主机发送一个连续的数据流时,有些外设能够进行多字节传输。许多拥有SPI接口的存储器芯片都以这种方式工作。在这种传输方式下,SPI外设的芯片选择端必须在整个传输过程中保持低电平。比如,存储器芯片会希望在一个“写“命令之后紧接着收到的是四个地址字节(起始地址),这样,后面接受到的数据就可以存储到该地址。一次传输可能会涉及千字节的移位或更多信息

wKgZomRnGq2AS7bDAAAuEBmbGBk220.jpg

其他外设只需要一个单字节(比如一个发给A/D转换器的命令),有些甚至还支持菊花链连接,菊花链连接三台SPI设备,如下图:

wKgaomRnGq2Ac61AAAA1MSMUXzM652.jpg

主机处理器从其SPI接口发送三个字节的数据。第一个字节发送给外设A,当第二个字节发送给外设A的时候,第一个字节已移出了A,而传送给了B。同样,主机想要从外设A读取一个结果,它必须再发送一个3字节(空字节)的序列,这样就可以把A中的数据移到B中,然后再移到C中,最后送回到主机。在这个过程中,主机还依次从B和C接受到字节。

注意,菊花链连接不一定适用于所有的SPI设备,特别是要求多字节传输的设备(比如存储器芯片),有的外设芯片也不支持菊花链连接。

根据时钟极性和时钟相位的不同,SPI有四个工作模式:

时钟极性CPOL有高、低两极;时钟极性为低电平时,空闲时时钟(SCK)处于低电平,传输时跳到高电平;时钟极性为高电平时,空闲时时钟处于高电平,传输时跳到低电平。

时钟相位CPHA有两个:时钟相位0和时钟相位1。当时钟相位为0时,时钟周期的前一边缘采集数据;当时钟相位为1时,时钟周期的后一边缘采集数据。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信