STM32——SPI

SPI 通信

SPI 是一种同步的全双工通信,支持一主多从

采用四根通信线

SCK(CK) : 串行时钟线

MOSI(DO) : 主机输出从机输入

MISO(DI) : 主机输入从机输出

SS(CS) : 从机选择

##移位寄存器

SPI 移位寄存器的时钟源由主机 波特率发生器提供,产生的时钟通过SCK接入从机的移位寄存器

主机高位通过MOSI输出到从机的低位

从机的高位通过MISO输出到主机的低位

这样SCK跳变8次 主机和从机就可以交换1个字节数据

SPI基本时序

  1. 起始条件:SS从高电平切换到低电平
  2. 终止条件:SS从低电平切换到高电平

交换一个字节

CPOL 时钟极性

CPHA 时钟相位

  1. 模式0 (CPOL =0 CPHA =0)
    CPOL=0:空闲状态,SCK低电平
    CPHA=0:SCK第一个边沿移入数据,第二个边沿移出数据

SCK此时需要在上升沿开始前先移出一个数据 所以在SS的下降沿直接移出一个数据

SCK上升沿移入数据

  1. 模式1 (CPOL =0 CPHA =1)
    CPOL=0:空闲状态,SCK低电平
    CPHA=1:SCK第一个边沿移出数据,第二个边沿移入数据

在SS高电平时MISO为高阻态 SS低电平时MISO为低阻态(防止多个从机输出)

SCK此时第一个边沿为上升延 移出数据 第二个边沿为下降沿 移入数据

  1. 模式2 (CPOL =1 CPHA =0)
    CPOL=1:空闲状态,SCK高电平
    CPHA=0:SCK第一个边沿移入数据,第二个边沿移出数据
  2. 模式3 (CPOL =1 CPHA =1)
    CPOL=1:空闲状态,SCK高电平
    CPHA=1:SCK第一个边沿移出数据,第二个边沿移入数据
相关推荐
wuyk5557 小时前
防逆向基础:在量产固件中关闭调试接口并设置读保护(RDP)的正确姿势
stm32·单片机·嵌入式硬件·性能优化·重构
zhangrelay11 小时前
单片机原理与接口技术-2026融合版-从MEGA2560-ESP32与Wokwi到ROS2-Lyrical与具身智能栈
单片机·嵌入式硬件
lhbweilai11 小时前
分析FreeRTOS内核对象API的源码实现(八)
c语言·开发语言·stm32·单片机
艾络迅Acceleronix12 小时前
环境监测终端:STM32+EG800Z AT+ 艾络迅平台实战|多传感器采集联动全流程
c语言·stm32·单片机·嵌入式硬件·物联网·1024程序员节
涂山苏苏⁠12 小时前
stm32复习总结
stm32·单片机·嵌入式硬件
Zwawa12 小时前
一只按键不只“按下”:短按、长按和连按如何共存
c语言·单片机·嵌入式
苏格拉真没有底13 小时前
ESP32 AI MCP调试器
stm32·单片机·嵌入式硬件
深圳老胡13 小时前
压力检测空吸功能硬件方案全解析:主流压力传感器品牌与实现路径
笔记·单片机·代码规范
硅基造物主14 小时前
STM32 从 0 到 1 做智能家居(二):把开发环境一次配好
stm32·mqtt·智能家居·hal库·esp-12f
zhangzhangkeji16 小时前
stm32, HAL 库,PVD 与低功耗:
stm32