【【STM32-SPI通信协议】】

STM32-SPI通信协议

STM32-SPI通信协议

•SPI(Serial Peripheral Interface)是由Motorola公司开发的一种通用数据总线

•四根通信线:SCK(Serial

Clock)、MOSI(Master Output Slave Input)、MISO(Master

Input Slave Output)、SS(Slave Select)

•同步,全双工

•支持总线挂载多设备(一主多从)

既然是同步的,我们就会发现它是存在时钟线的,那么其中的SCK就是同步时钟的时钟线

全双工就是 发送归发送接收归接收 这是两根线 互相不受影响

MOSI 是 主机发送从机接收的数据线

MISO 是 主机接收从机发送的数据线

SPI支持总线挂载多设备 一主多从

SS的作用是直接连接到一个从机上 一个从机连一根 片选作用

所有SPI设备的SCK、MOSI、MISO分别连在一起

主机另外引出多条SS控制线,分别接到各从机的SS引脚

输出引脚配置为推挽输出,输入引脚配置为浮空或上拉输入

SS 主要起到了片选的作用因为有多个从机 所以才会接上了SS1 SS2 SS3 等等

虽然它在图片里没有画出来但是这种设备的实现都是需要共地的

如果没有供电的话,主机和从机都要引入Vcc 一起带动电压

SCK 完全是由主机掌控 主机单纯的输出 从机只能被动的接收

SS线是低电平有效的 当我们主机需要控制某个从机时 给SS线赋低电平 结束通信之后会重新把SS置回高电平1

我们把SPI通信中的输出设置为推挽输出模式

输入引脚配置为浮空或上拉输入

因为MISO都接在了一起 所以为了防止出现不必要的扰动 当SS 为高 未被选中时 ,那么MISO 就会被设置为高阻态 因为其实我们基本上都是操作主机的 从机的这种只要我们了解即可,并非需要真的写此类代码

起始条件:SS从高电平切换到低电平

终止条件:SS从低电平切换到高电平

相关推荐
KOAN凯擎小妹2 小时前
无源晶振为什么有串联谐振和并联谐振?MCU为什么使用并联晶体?
单片机·嵌入式硬件·晶振·元器件
茯苓gao3 小时前
嵌入式开发笔记:CAN与CAN FD完全指南——从帧格式差异到MCU选型实战
网络·笔记·stm32·嵌入式硬件·学习·汽车
木木_王3 小时前
嵌入式学习 | STM32 裸板驱动开发(Day06) | DHT11温湿度传感器超详解(单总线时序+全套驱动代码+智能温湿度报警项目)
驱动开发·stm32·学习
论迹复利4 小时前
蓝牙 OTA 升级断连、升级失败底层链路问题定位
嵌入式硬件·安全·bt
振南的单片机世界5 小时前
3.5T静默分帧,CRC16校验:Modbus-RTU帧结构解析
arm开发·stm32·单片机·嵌入式硬件
LingzhiPi5 小时前
零知派ESP32--AS5600磁吸旋钮音量控制器
c++·单片机·嵌入式硬件
尼喃5 小时前
42V热拔插认证过压保护芯片:70V耐压+响应<1μs+可调OVP+SOT23-6
嵌入式硬件
0x3F(小茶)6 小时前
STM32 SPI的5种方向模式
c语言·stm32·单片机·嵌入式硬件
BSD_CGQ7 小时前
FSR压力传感器信号调理电路设计要点
单片机·嵌入式硬件·压力传感器·源头工厂·薄膜压力传感器
爱就是恒久忍耐8 小时前
CanFestival移植到STM32 F103芯片(基于HAL库)
stm32·单片机·嵌入式硬件