南京医院手机网站建设,天猫代运营电商公司排行榜,房屋设计平面图,wordpress 加载流程SPI介绍
SPI是Serial Pepheral interface缩写#xff0c;串行外围设备接口。 SPI接口是一种高速的全双工同步通信总线#xff0c;已经广泛应用在众多MCU、存储芯片、AD转换器和LCD之间。大部分STM32有3个SPI接口#xff0c;本实验使用的是SPI1。
SPI同一时刻既能发送数据串行外围设备接口。 SPI接口是一种高速的全双工同步通信总线已经广泛应用在众多MCU、存储芯片、AD转换器和LCD之间。大部分STM32有3个SPI接口本实验使用的是SPI1。
SPI同一时刻既能发送数据也能接收数据。
SPI结构框图 SPI 的引脚信息 MISOMaster In / Slave Out主设备数据输入从设备数据输出。 MOSIMaster Out / Slave In主设备数据输出从设备数据输入。 SCLKSerial Clock时钟信号由主设备产生。 CSChip Select从设备片选信号由主设备产生。
SPI的工作原理 在主机和从机都有一个串行移位寄存器主机通过向它的SPI串行寄存器写入一个字节来发起一次传输。 串行移位寄存器通过MOSI信号线将字节传送给从机从机也将自己的串行移位寄存器中的内容通过MISO信号线返回给主机。 这样两个移位寄存器中的内容就被交换。
外设的写操作和读操作是同步完成的。 如果只是进行写操作主机只需要忽略接收到的字节。 反之若主机要读取从机的一个字节就必须发送一个空字节引发从机传输。
SPI 的传输方式SPI 总线具有三种传输方式全双工、单工以及半双工传输方式。 全双工通信就是在任何时刻主机与从机之间都可以同时进行数据的发送和接收。 单工通信就是在同一时刻只有一个传输的方向发送或者是接收。 半双工通信就是在同一时刻只能为一个方向传输数据。
SPI外设对应的引脚
STM32芯片有多个SPI外设每个SPI外设输出的信号会到不同的GPIO口。
STM32F1有三个SPI。
SPI工作模式
STM32要与具有SPI接口的器件进行通信就必须遵循SPI的通信协议。 每一种通信协议都有各自的读写数据时序当然SPI也不例外。 SPI通信协议就具备4种工作模式。
CPOLClock Polarity就是时钟极性当主从机没有数据传输的时候即空闲状态SCL线的电平状态。假如空闲状态是高电平CPOL1若空闲状态时低电平那么 CPOL 0。
CPHAClock Phase就是时钟相位。同步通信时数据的变化和采样都是在时钟边沿上进行的每一个时钟周期都会有上升沿和下降沿两个边沿那么数据的变化和采样就分别安排在两个不同的边沿由于数据在产生和到它稳定是需要一定的时间假如我们在第1个边沿信号把数据输出了从机只能从第个边沿信号去采样这个数据。 SPI相关寄存器 SPI相关HAL库驱动介绍 SPI外设相关结构体