SPI协议

SPI介绍

SPI 协议是由摩托罗拉公司提出的通讯协议 (Serial Peripheral Interface)

  • SPI 是英语 Serial Peripheral interface 的缩写,顾名思义就是串行外围设备接口。

  • SPI,是一种高速的,全双工,同步的通信总线。SPI(串行外设接口)以其高速度而著称,使其成为快速通信的首选。

  • SPI 主要特点有:可以同时发出和接收串行数据;可以当作主机或从机工作;提供频率可编程时钟;发送结束中断标志;写冲突保护;总线竞争保护等。

  • 广泛地使用在 ADC、LCD 等设备与 MCU 间,要求通讯速率较高的场合。

在这里插入图片描述

优缺点

优点:

  • 高速:SPI通信速度较快,适用于对速度要求较高的应用。
  • 全双工:SPI支持全双工通信,可以同时进行数据发送和接收。
  • 简单:SPI的通信协议相对简单,适用于快速开发和实现。

缺点:

  • 连线复杂:SPI需要多根线进行连接,可能会增加硬件设计的复杂性。
  • 长距离传输受限:SPI的传输距离受到限制,过长的线路可能导致信号衰减和干扰。
  • 主从模式限制:SPI通常采用主从模式,主设备数量受限,不适用于多主设备场景。

应用

SPI 非常适合需要快速可靠的数据传输的情况,例如 TFT 显示器、SD 存储卡和无线通信模块
在这里插入图片描述

SPI内部结构图

在这里插入图片描述

详细的内部图:
在这里插入图片描述在这里插入图片描述

仔细看右下角有两个关键寄存器,CR1和CR2。
SPI 接口一般使用 4 条线通信:
• MISO 主设备数据输入,从设备数据输出。Master input slaver output,主如从出。

  • 寄存器通过 MOSI 信号线将字节传送给从机,从机也将自己的移位寄存器中的内容通过 MISO 信号线返回给主机。这样,两个移位寄存器中的内容就被交换。
  • 外设的写操作和读操作是同步完成的。

• MOSI 主设备数据输出,从设备数据输入。
• SCLK 时钟信号,由主设备产生。
• CS(NSS) 从设备片选信号,由主设备控制,从设备也需要进行相应的设置。可让 SPI主器件与从器件进行单独通信,从而并避免数据线上的竞争。

  • 从器件的 NSS 输入可由主器件上的标准 IO 端口驱动,这是当外部NSS处于高电平时的玩法。
  • NSS 引脚在使能(SSOE 位)时还可用作输出,可在SPI 处于主模式配置时驱动为低电平
    • 只要器件配置成 NSS 硬件管理模式,所有连接到该主器件 NSS 引脚的其它器件 NSS 引脚都将呈现低电平,并因此而作为从器件。
    • 当配置为主模式,且 NSS 配置为输入(MSTR=1 且 SSOE=0)时,如果NSS 拉至低电平,SPI 将进入主模式故障状态:MSTR 位自动清零,并且器件配置为从模式
      load_url2

相关推荐

  1. <span style='color:red;'>SPI</span><span style='color:red;'>协议</span>

    SPI协议

    2024-04-06 05:26:05      35 阅读
  2. SPI协议详解

    2024-04-06 05:26:05       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-06 05:26:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-06 05:26:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-06 05:26:05       82 阅读
  4. Python语言-面向对象

    2024-04-06 05:26:05       91 阅读

热门阅读

  1. ubuntu23.10全家桶(date2024.4.3)

    2024-04-06 05:26:05       45 阅读
  2. nginx: 集群环境配置搭建

    2024-04-06 05:26:05       30 阅读
  3. Rust个人学习之单元测试

    2024-04-06 05:26:05       36 阅读
  4. 【PyQt】读取MySQL数据填充到Qt表格控件中

    2024-04-06 05:26:05       34 阅读
  5. 详解Qt中访问数据库

    2024-04-06 05:26:05       35 阅读
  6. 设计模式:享元模式

    2024-04-06 05:26:05       39 阅读
  7. 蓝桥杯入门题知识点总结

    2024-04-06 05:26:05       37 阅读
  8. 代码随想录第十六天: 二叉树part03

    2024-04-06 05:26:05       38 阅读
  9. LeetCode //C - 154. Find Minimum in Rotated Sorted Array II

    2024-04-06 05:26:05       41 阅读
  10. 【电路笔记】-逻辑或门

    2024-04-06 05:26:05       34 阅读