1. SPI家族总线概述
同步串行通信总线在嵌入式系统中扮演着至关重要的角色,其中SPI及其衍生协议构成了一个完整的技术谱系。这些协议共享相同的底层通信机制,但在性能、复杂度和应用场景上各有侧重。
提示:所有SPI变体都采用主从架构,由主设备提供时钟信号,从设备在时钟边沿采样数据,这种同步机制避免了异步通信中的波特率匹配问题。
1.1 技术演进路线
SPI家族的技术演进呈现出清晰的路径:
- MICROWIRE:最早期的简化版本,由美国国家半导体(NS)提出
- 标准SPI:摩托罗拉制定的工业标准版本
- QSPI:四线制高速扩展版本
- OctoSPI:八线制超高速版本
这种演进主要围绕两个核心维度:
- 数据线数量增加(1线→2线→4线→8线)
- 时钟机制优化(单端时钟→差分时钟)
1.2 核心特性对比
| 特性 | MICROWIRE | 标准SPI | QSPI | OctoSPI |
|---|---|---|---|---|
| 数据线数量 | 1 | 2 | 4 | 8 |
| 最大速率 | 5Mbps | 50Mbps | 180Mbps | 800Mbps |
| 工作模式 | 半双工 | 全双工 | 半双工 | 半双工 |
| 典型应用 | 低速传感器 | 通用外设 | Flash存储 | 高速存储 |
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 标准SPI深度解析
2.1 硬件接口规范
标准SPI采用4线制设计:
- SCLK:同步时钟(主→从)
- MOSI:主设备输出,从设备输入
- MISO:主设备输入,从设备输出
- NSS:片选信号(低电平有效)
在实际应用中,根据外设需求可以简化为:
- 3线模式:省略NSS,通过软件控制片选
- 2线模式:MOSI与MISO合并为单数据线
注意:全双工模式下必须使用4线配置,半双工模式才可采用2线简化设计。
2.2 时序模式详解
SPI的时序灵活性体现在时钟极性和相位的四种组合:
| 模式 | CPOL
