首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[分享]SPI总线协议

发布于 2025-04-16 11:44:35
0
269

0. 概述数据线:SCL :同步时钟线,用于控制时序,可通过CPOL设置极性MOSI :主机发送从机接收 数据线MISO :主机接收从机发送 数据线CS/NSS:片选信号线,低电平有效,但是每个从设备...

0. 概述

  • 数据线:
    SCL :同步时钟线,用于控制时序,可通过CPOL设置极性
    MOSI :发送-接收 数据线
    MISO :接收-发送 数据线
    CS/NSS片选信号线,电平有效,但是每个从设备都想要一根CS线,占用引脚多

  • 支持全双工通信

  • 高速片上通信协议:
    支持MHz级速率(取决于设备)

    波特率 = SCK 时钟频率

1. 四个参数

1. LSB/MSB: 大端小端选择

示例:(如下图)

图片alt

2. 8-bit/16bit: 字长选择

3. 时钟极性(CPOL):

  • CPOL = 0SCL空闲状态为电平

  • CPOL = 1SCL空闲状态为电平

    示例:(如下图)

图片alt

4. 时钟相位(CPHA):

  • CPHA= 0:在时钟信号SCK的第一个跳变沿采样

  • CPHA = 1:在时钟信号SCK的第二个跳变沿采样

示例:(如下图)

图片alt

图片alt

2. 四种时钟模式

  • tip:若发送数据在上升沿,则接收数据在下降沿,反之

模式

CPOL

CPHA

SCL 空闲电平

主设备更新数据(MOSI)

主设备采样数据(MISO)

从设备采样数据(MOSI)

从设备更新数据(MISO)

0

0

0

低电平

下降沿

上升沿

上升沿

下降沿

1

0

1

低电平

上升沿

下降沿

下降沿

上升沿

2

1

0

高电平

上升沿

下降沿

下降沿

上升沿

3

1

1

高电平

下降沿

上升沿

上升沿

下降沿

3. 多从机模式

3.1 多CS模式 :每个从机都需要一根单独的CS线

3.2 菊花链(环形)拓扑:

  • 菊花链的最大缺点是因为是信号串行传输,所以一旦数据链路中的某设备发生故障的时候,它下面优先级较低的设备就不可能得到服务了;

  • 另一方面,距离主机越远的从机,获得服务的优先级越低,所以需要安排好从机的优先级,并且设置总线检测器,如果某个从机超时,则对该从机进行短路,防止单个从机损坏造成整个链路崩溃的情况;

4.优缺点:

4.1 优点:

  • 全双工串行通信

  • 通信速率高

  • 配置简单

  • 硬件结构简单,从机使用主机时钟

4.2 缺点

  • 通常只支持一个主机

  • 需要更多的引脚

  • 没有物理层的错误检测协议

  • 没有硬件从机应答信号

  • 通信距离短(片上通信)

评论
一个月内的热帖推荐
啊龙
Lv.1普通用户

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流