芯片元器件
HOME
芯片元器件
正文内容
spi芯片 一文了解SPI总线工作原理,优缺点和应用案例
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

一文了解SPI总线工作原理、优缺点和应用案例

将微控制器连接到传感器,显示器或其他模块时,您是否考虑过两个设备之间如何通信?他们到底在说什么?他们如何能够相互理解?

电子设备之间的通信就像人类之间的通信,双方都需要说同一种语言。在电子学中,这些语言称为通信协议。幸运的是,在构建大多数DIY电子项目时,我们只需要了解一些通信协议。在本系列文章中,我们将讨论三种最常见协议的基础知识:串行外设接口(SPI),内部集成电路(I2C)和通用异步接收器/发送器(UART)驱动通信。

首先,我们将从一些关于电子通信的基本概念开始,然后详细解释SPI的工作原理。

SPI,I2C和UART比USB,以太网,蓝牙和WiFi等协议慢得多,但它们更简单,使用的硬件和系统资源也更少。 SPI,I2C和UART非常适用于微控制器之间以及微控制器和传感器之间的通信,在这些传感器中不需要传输大量高速数据。

串行与并行通信

电子设备通过物理连接在设备之间的导线发送数据位来相互通信,有点像一个字母中的字母,除了26个字母(英文字母表中),一个位是二进制的,只能是1或0。通过电压的快速变化,位从一个设备传输到另一个设备。在工作电压为5V的系统中,0位作为0V的短脉冲通信,1位通过5V的短脉冲通信。

数据位可以并行或串行形式传输。在并行通信中,数据位是同时发送的,每个都通过单独的线路。下图显示了二进制(01000011)中字母“C”的并行传输:

在串行通信中,通过单线逐个发送这些位。下图显示了二进制(01000011)中字母“C”的串行传输:

SPI通信简介

许多设备都采用了SPI通用通信协议。例如,SD卡模块,RFID读卡器模块和2.4 GHz无线发送器/接收器都使用SPI与微控制器通信。

SPI的一个独特优势是可以不间断地传输数据。可以连续流发送或接收任意数量的比特。使用I2C和UART,数据以数据包形式发送,限制为特定的位数。启动和停止条件定义每个数据包的开始和结束,因此数据在传输过程中会被中断。

通过SPI通信的设备处于主从关系。主设备是控制设备(通常是微控制器),而从设备(通常是传感器,显示器或存储器芯片)接收来自主设备的指令。最简单的SPI配置是单主机,单从机系统,但是一个主机可以控制多个从机(下面将详细介绍)。

SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间。

(1)MISO– Master Input Slave Output,主设备数据输入,从设备数据输出;

(2)MOSI– Master Output Slave Input,主设备数据输出,从设备数据输入;

(3)SCLK – Serial Clock,时钟信号,由主设备产生;

(4)CS – Chip Select,从设备使能信号,由主设备控制。

*实际上,从设备的数量受到系统负载电容的限制,受主设备在电压电平之间精确切换的能力。

SPI如何工作

时钟

时钟信号将来自主设备的数据位输出与从设备的位采样同步。在每个时钟周期传输一位数据,因此数据传输的速度由时钟信号的频率决定。由于主设备配置并生成时钟信号,因此SPI时钟始终为主设备的时钟。

设备共享时钟信号的任何通信协议称为同步。SPI是一种同步通信协议,还有一些不使用时钟信号的异步方法。例如,在UART通信中,双方都设置为预先配置的波特率,该波特率决定数据传输的速度和时间。

SPI中的时钟信号可以使用时钟极性和时钟相位属性进行修改。这两个属性协同工作以定义何时输出以及何时对它们进行采样。时钟极性可由主机设置,以允许在时钟周期的上升沿或下降沿输出和采样。时钟相位也可以由主机设置,以便在时钟周期的第一个边沿或第二个边沿上进行输出和采样,无论是上升还是下降。

从设备选择

主设备可以通过将从设备的CS / SS线设置为低电压电平来选择要通话的从设备。在空闲非传输状态中,从选择线保持在高电压电平。主机上可能有多个CS / SS引脚,以允许多个从机并联连接。如果只有一个CS/SS引脚,则可以通过菊花链将多个从器件连接到主器件。

多个从设备

SPI可以设置为使用单个主设备和单个从设备进行操作,也可以设置通过单个主设备控制多个从设备。有两种方法可以将多个从站连接到主站。如果主机有多个从机选择引脚,则从机可以并联连接,如下所示:

如果只有一个从选择引脚可用,则从器件可以菊花链式连接,如下所示:

MOSI和MISO

主机通过MOSI线串行发送数据到从机。从器件接收MOSI引脚上的主器件发送的数据。从主设备发送到从设备的数据通常首先以最高有效位发送。

从机还可以通过串行的MISO线路将数据发送回主机。从从设备发送回主设备的数据通常首先以最低有效位发送。

SPI数据传输步骤

1.主机输出时钟信号:

2.主器件将SS / CS引脚切换到低电压状态,从而激活从器件:

3.主机沿MOSI线一次一位地向从机发送数据。从机在接收到的位时读取这些位:

4.如果需要响应,从站将沿着MISO线一次一位地向主站返回数据。主机在接收到的位时读取这些位:

SPI的优点和缺点

使用SPI有一些优点和缺点,如果在不同的通信协议之间进行选择,您应该根据项目的要求知道何时使用SPI:

优点

没有启动和停止位,因此数据可以连续流式传输而不会中断

没有复杂的从机寻址系统,如I2C

比I2C更高的数据传输速率(几乎快两倍)

单独的MISO和MOSI线,因此可以同时发送和接收数据

缺点

使用四根线(I2C和UART使用两根)

无法确认数据已成功接收(I2C已执行此操作)

没有错误检查,如UART中的奇偶校验位

仅允许单个主机

了解SPI总线工作原理、优缺点和应用案例,看这一篇就够了

将微控制器连接到传感器,显示器或其他模块时,您是否考虑过两个设备之间如何通信?他们到底在说什么?他们如何能够相互理解?

电子设备之间的通信就像人类之间的通信,双方都需要说同一种语言。在电子学中,这些语言称为通信协议。幸运的是,在构建大多数DIY电子项目时,我们只需要了解一些通信协议。在本系列文章中,我们将讨论三种最常见协议的基础知识:串行外设接口(SPI),内部集成电路(I2C)和通用异步接收器/发送器(UART)驱动通信。

首先,我们将从一些关于电子通信的基本概念开始,然后详细解释SPI的工作原理。

SPI,I2C和UART比USB,以太网,蓝牙和WiFi等协议慢得多,但它们更简单,使用的硬件和系统资源也更少。 SPI,I2C和UART非常适用于微控制器之间以及微控制器和传感器之间的通信,在这些传感器中不需要传输大量高速数据。

串行与并行通信

电子设备通过物理连接在设备之间的导线发送数据位来相互通信,有点像一个字母中的字母,除了26个字母(英文字母表中),一个位是二进制的,只能是1或0。通过电压的快速变化,位从一个设备传输到另一个设备。在工作电压为5V的系统中,0位作为0V的短脉冲通信,1位通过5V的短脉冲通信。

数据位可以并行或串行形式传输。在并行通信中,数据位是同时发送的,每个都通过单独的线路。下图显示了二进制(01000011)中字母“C”的并行传输:

在串行通信中,通过单线逐个发送这些位。下图显示了二进制(01000011)中字母“C”的串行传输:

SPI通信简介

许多设备都采用了SPI通用通信协议。例如,SD卡模块,RFID读卡器模块和2.4 GHz无线发送器/接收器都使用SPI与微控制器通信。

SPI的一个独特优势是可以不间断地传输数据。可以连续流发送或接收任意数量的比特。使用I2C和UART,数据以数据包形式发送,限制为特定的位数。启动和停止条件定义每个数据包的开始和结束,因此数据在传输过程中会被中断。

通过SPI通信的设备处于主从关系。主设备是控制设备(通常是微控制器),而从设备(通常是传感器,显示器或存储器芯片)接收来自主设备的指令。最简单的SPI配置是单主机,单从机系统,但是一个主机可以控制多个从机(下面将详细介绍)。

SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间。

(1)MISO– Master Input Slave Output,主设备数据输入,从设备数据输出;

(2)MOSI– Master Output Slave Input,主设备数据输出,从设备数据输入;

(3)SCLK – Serial Clock,时钟信号,由主设备产生;

(4)CS – Chip Select,从设备使能信号,由主设备控制。

*实际上,从设备的数量受到系统负载电容的限制,受主设备在电压电平之间精确切换的能力。

SPI如何工作

时钟

时钟信号将来自主设备的数据位输出与从设备的位采样同步。在每个时钟周期传输一位数据,因此数据传输的速度由时钟信号的频率决定。由于主设备配置并生成时钟信号,因此SPI时钟始终为主设备的时钟。

设备共享时钟信号的任何通信协议称为同步。SPI是一种同步通信协议,还有一些不使用时钟信号的异步方法。例如,在UART通信中,双方都设置为预先配置的波特率,该波特率决定数据传输的速度和时间。

SPI中的时钟信号可以使用时钟极性和时钟相位属性进行修改。这两个属性协同工作以定义何时输出以及何时对它们进行采样。时钟极性可由主机设置,以允许在时钟周期的上升沿或下降沿输出和采样。时钟相位也可以由主机设置,以便在时钟周期的第一个边沿或第二个边沿上进行输出和采样,无论是上升还是下降。

从设备选择

主设备可以通过将从设备的CS / SS线设置为低电压电平来选择要通话的从设备。在空闲非传输状态中,从选择线保持在高电压电平。主机上可能有多个CS / SS引脚,以允许多个从机并联连接。如果只有一个CS/SS引脚,则可以通过菊花链将多个从器件连接到主器件。

多个从设备

SPI可以设置为使用单个主设备和单个从设备进行操作,也可以设置通过单个主设备控制多个从设备。有两种方法可以将多个从站连接到主站。如果主机有多个从机选择引脚,则从机可以并联连接,如下所示:

如果只有一个从选择引脚可用,则从器件可以菊花链式连接,如下所示:

MOSI和MISO

主机通过MOSI线串行发送数据到从机。从器件接收MOSI引脚上的主器件发送的数据。从主设备发送到从设备的数据通常首先以最高有效位发送。

从机还可以通过串行的MISO线路将数据发送回主机。从从设备发送回主设备的数据通常首先以最低有效位发送。

SPI数据传输步骤

1.主机输出时钟信号:

2.主器件将SS / CS引脚切换到低电压状态,从而激活从器件:

3.主机沿MOSI线一次一位地向从机发送数据。从机在接收到的位时读取这些位:

4.如果需要响应,从站将沿着MISO线一次一位地向主站返回数据。主机在接收到的位时读取这些位:

SPI的优点和缺点

使用SPI有一些优点和缺点,如果在不同的通信协议之间进行选择,您应该根据项目的要求知道何时使用SPI:

优点

没有启动和停止位,因此数据可以连续流式传输而不会中断

没有复杂的从机寻址系统,如I2C

比I2C更高的数据传输速率(几乎快两倍)

单独的MISO和MOSI线,因此可以同时发送和接收数据

缺点

使用四根线(I2C和UART使用两根)

无法确认数据已成功接收(I2C已执行此操作)

没有错误检查,如UART中的奇偶校验位

仅允许单个主机

相关问答

spi隔离芯片什么作用?

SPI(SerialPeripheralinterface),即串行外围设备接口,是一种高速的,全双工,同步的通信总线,由于其在芯片的管脚上只占用四根线,节约了芯片的管脚,同时...SP...

什么是SPIBIOS-ZOL问答

SPI是BIOS芯片的接口类型,现在大部分BIOS芯片都是采用这样接口,引脚少,芯片小,容量大。你可以找下BIOS芯片,SPI的BIOS芯片是8个引脚的,2边,各4个。至于520xx就...

spi总线电压?

工作电压是根据所用芯片来定的,有的芯片有3.3V电压,有的是5V电压。而两个芯片之间用SPI通信,必须电压一致,如果两芯片一个是3.3一个是5V,那最好加上光耦隔离...

SPI是什么意思呢?

SPI是串行外设接口(SerialPeripheralInterface)的名称缩写。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管...

gd32芯片的spi使用注意事项?

使用gd32芯片的SPI时,需要注意以下事项:1.确保正确配置SPI的时钟和模式。SPI有不同的时钟分频和模式设置,根据实际需求进行配置。2.在进行SPI数据传输之前,...

Spi四线端电压是什么?

Spi四线端电压是:SPI通信时候的工作电压是根据所用芯片来定的,有的芯片有3.3V电压,有的是5V电压。而两个芯片之间用SPI通信,必须电压一致,如果两芯片一个是3...

muc芯片介绍?

该芯片可在在48MHz时钟频率下,Cortex®-M3内核工作性能可达50DMIPS。具备内核访问闪存高速零等待,配备16KB到64KB的内置Flash,及4KB到8KB的SRAM。接口方面,...

SPI是什么意思?

SPI是串行外设接口(SerialPeripheralInterface)的缩写。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,...S...

主板上有哪些芯片?

主板上有许多芯片,这些芯片包括:1.处理器芯片:如IntelCorei5、i7、i9,AMDRyzen、RyzenPro等。2.显卡芯片:如NVIDIAGeForce、RTX,AMD...

芯片都有输出波形吗?

并不是所有的芯片都有波形输出,那么芯片输出的是什么呢?芯片其实可以分为很多类,有输出的是模拟信号,有的是输出数字信号。1,电源芯片电源芯片可以分L...并不...

 rihanna loud  2021nba全明星 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部