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第一个边沿移出数据,第二个边沿移入数据
相关推荐
Zw-awa14 小时前
反馈:让系统知道自己做得对不对
stm32
女神下凡16 小时前
芯参谋(38):NAND_MCP_电路设计指南
arm开发·单片机·嵌入式硬件·设计规范
嵌入式学习菌17 小时前
FreeRTOS 中断管理实战:BASEPRI 寄存器实验
单片机·嵌入式硬件
HRTOS18 小时前
HRTOS:一个名字背后的目标——不断逼近硬实时
经验分享·单片机·系统架构·51单片机
UrSpecial20 小时前
GPIO 是什么?
单片机·嵌入式硬件
剑指offer.21 小时前
ARM裸机开发-SPI
arm开发·嵌入式硬件·嵌入式·arm
修船大队长1 天前
配置接受报文每个报文对应一个mailbox配置流程记录
网络·单片机·mcu
搁浅小泽1 天前
二极管选型技术规范
单片机·嵌入式硬件·汽车
搁浅小泽1 天前
电感选型技术规范
单片机·嵌入式硬件·汽车
..Dauntless..1 天前
【stm32】串口——在MCU内部的工作过程
stm32·单片机·嵌入式硬件