您知道嵌入式开发中八大常用接口与总线有哪些吗?

在嵌入式硬件与单片机项目开发过程中,芯片与外设之间的数据交互全部依靠各类总线、接口完成。不同协议在引脚开销、传输速率、通信机制、抗干扰能力上各有取舍。开发工作中,读懂各类接口特性,是硬件选型、驱动编写的基础。本文梳理 IIC、IIS、SPI、UART、JTAG、CAN、SDIO 以及 GPIO 这八个高频使用的硬件接口,从硬件构成、通信逻辑、优劣特性和落地场景展开介绍。

IIC(I2C)集成电路总线

IIC 是一套同步半双工的两线串行通信协议,早期由飞利浦推出,整体硬件架构十分精简,仅仅依靠 SCL 时钟线、SDA 双向数据线完成全部通信流程。硬件层面采用开漏输出,总线上所有设备都需要配合上拉电阻才能正常工作。

总线支持多主机架构,总线上挂载的每一个外设都拥有专属设备地址(7 位或 10 位),主机通过发送设备地址来选定通信对象,无需额外分配片选引脚。速率档位丰富,标准模式为 100Kbps,快速模式可达 400Kbps,高速模式最高能够跑到 3.4Mbps。

它最大优势在于节省 IO 资源,少量引脚就能够挂载大量外设;短板是属于半双工通信,同一时刻只能单向收发,总线的寄生电容会限制走线长度与挂载设备数量。 实际项目多用于温湿度传感器、RTC 时钟芯片、EEPROM 存储芯片、小型 OLED 显示屏这类低速外设。

IIS(I2S)集成电路音频总线

IIS 是专门面向数字音频业务设计的同步总线,协议设计初衷就是处理音频芯片之间的数据流,并不适合传输普通控制指令。 主要信号包含位时钟 BCLK、声道帧同步信号 WS,还有音频串行数据线 SD。部分硬件方案会将输入、输出数据线相互独立,以此实现全双工音频传输;很多音频电路还会额外增加一路 MCLK 主时钟,保障采样时序稳定。

协议将时钟、声道选择、音频数据三路信号相互分离,可以有效规避时序偏移带来的音频失真,传输速率跟随采样率、音频位深动态变化,适配从 8KHz 到 192KHz 的主流音频采样规格。 常见应用场景为主控芯片搭配音频 Codec 编解码芯片、蓝牙音频模块、数字功放设备。

SPI 串行外设接口

SPI 属于高速同步全双工串行接口,采用主从工作架构。基础硬件包含四根信号线:SCLK 主机输出时钟、MOSI 主机向外输出数据、MISO 从机回传数据、CS 片选信号。如果需要接入更多从机,通常就要新增对应的片选引脚。

通信时钟完全由主机生成,依靠 CPOL 时钟极性、CPHA 时钟相位组合出四种工作模式,主从双方必须保持模式一致才能正常交互。传输性能表现优秀,普通单片机硬件 SPI 可以做到数兆至几十兆比特每秒。

优势为协议简单、传输速度快,支持同一时刻双向收发;缺点在于外设增多时会消耗大量 IO 口,协议本身没有内置设备地址与数据校验机制。 多用于 SPI‑Flash 存储、高速 ADC/DAC 采样芯片、TFT 液晶屏幕、各类无线射频模块。

UART 通用异步收发器

UART 也就是常说的串口,是典型异步通信接口,基础通信仅需要 TX 发送引脚与 RX 接收引脚,通信双方不需要共享同一套时钟,依靠预先约定好的波特率实现时序对齐。同时 UART 可以搭配不同收发芯片,衍生 TTL、RS232、RS485 等不同电气标准。

数据帧依靠起始位、停止位,可选校验位完成界定。普通 TTL 串口大多是点对点通信;RS485 差分方案则可以组建多点总线网络。常用波特率有 9600、115200、1Mbps 等档位。

协议简单易实现,RS485 版本能够实现较远的板间、设备间通信;因为没有同步时钟,波特率偏差过大就会出现帧错误、数据乱码,不适合超高速传输。 开发中经常用作调试日志打印,对接 GPS、蓝牙透传模块,工业设备也常使用 RS485 完成组网通信。

JTAG 调试测试接口

JTAG 不属于业务数据传输总线,遵循 IEEE1149.1 标准,核心定位是芯片调试、固件烧录、电路板边界扫描检测。 标准 JTAG 包含 TCK 测试时钟、TMS 模式选择、TDI 数据输入、TDO 数据输出四路信号,TRST 硬件复位为可选引脚。

即便芯片上层软件没有运行,只要基础时钟供电正常,就能够访问 CPU 内部寄存器。可以完成固件下载、断点调试、寄存器读写;在生产阶段还可以做边界扫描,检测 PCB 板焊接短路、虚焊等硬件故障。 主要用于 MCU、FPGA 程序下载调试,电子产品工厂硬件检测。

CAN 控制器局域网总线

CAN 总线诞生于汽车行业,依靠差分信号 CAN_H、CAN_L 完成通信,具备极强的抗电磁干扰能力,支持多节点组网工作。

总线采用多主竞争机制,多个节点同时发送数据时会通过报文 ID 自动仲裁优先级;硬件自带完备的错误检测、报文重传,还可以自动隔离故障节点,避免单点故障拖垮整个总线。通信速率和传输距离负相关,短距离条件最高 1Mbps,数千米远距离场景速率会下降至几十 Kbps。 广泛使用在汽车车载电子、工业自动化设备、机器人控制系统。

SDIO SD 输入输出接口

SDIO 协议是在 SD 存储卡协议基础上扩展而来,硬件引脚和 SD 卡相互兼容,除读取 SD 存储卡以外,还可以挂载功能外设。 硬件支持 1bit 和 4bit 两种数据宽度模式,复用 CLK 时钟、CMD 命令、D0‑D3 数据引脚。 在硬件设计上能够同时兼容存储设备与功能模块,降低硬件设计成本。项目中主要用于 SD 存储卡,以及 SDIO 规格的 WiFi、蓝牙模块。

GPIO 通用输入输出引脚

严格来讲 GPIO 并不属于通信总线,是微控制器最基础的硬件引脚资源。每一路 GPIO 都能够独立配置工作模式,既可以配置为输入模式检测外部电平,支持软件开启上拉、下拉;也可以配置输出模式输出高低电平;同时绝大多数总线接口,都可以复用 GPIO 引脚实现硬件外设功能。

利用 GPIO 软件模拟时序,还可以模拟 IIC、SPI 等串行协议;适合处理按键检测、LED 指示灯、继电器通断这类简单开关量控制。但软件模拟总线会占用大量 CPU 资源,很难实现高传输速率。

接口 同步 / 异步 核心信号线 核心特点 典型应用场景
IIC 同步 SDA、SCL 引脚少,支持多从机地址寻址 传感器、小容量存储、OLED
IIS 同步 BCLK、WS、SD 专为音频数据流设计 音频 Codec、数字功放
SPI 同步 SCLK、MOSI、MISO、CS 高速全双工,协议简洁 Flash、高速采样芯片、显示屏
UART 异步 TX、RX 部署简单,可差分远距离传输 调试打印、外接模块、RS485 组网
JTAG 同步 TCK、TMS、TDI、TDO 硬件级调试烧录,边界扫描 MCU/FPGA 调试、产线硬件测试
CAN 差分同步 CAN_H、CAN_L 抗干扰强,故障节点隔离 汽车电子、工业现场控制
SDIO 同步 CLK、CMD、D0‑D3 兼容 SD 卡协议 SD 卡、SDIO‑WiFi 模块
GPIO 无 独立 IO 引脚 高度灵活,可模拟各类时序 按键、LED、继电器开关控制

硬件项目选型的时候,除传输速率以外,还需要综合评估芯片引脚资源、走线距离、现场电磁环境、功耗指标。很多低速总线可以依靠 GPIO 软件模拟实现,但高速业务场景,尽量使用芯片内置硬件控制器,减少 CPU 负担,保障通信稳定性。

相关推荐
for_ever_love__1 小时前
LangChain 时间加权检索:让‘最近的事‘更容易被想起
人工智能·语言模型·数据挖掘·langchain·向量·检索·时间加权
陈嘿萌1 小时前
CVPR 2026 | 上交&复旦&清华 3M-TI:让 RGB 成为热成像超分助手,手机也能看清细节!
人工智能·计算机视觉·智能手机·学术研究与理论基础
weixin_446260851 小时前
认知谦逊:知识冲突场景下大模型智能体的识别‑处理‑上报评测框架
人工智能
Summer-Bright1 小时前
深度 | 记忆的锁定账:模型可以随便换,记忆却搬不走
人工智能·agent·记忆
逐光者9331 小时前
STM32项目——秒表
stm32·单片机·嵌入式硬件
袖清暮雨1 小时前
机器学习之其他聚类(层次聚类+DBSCAN算法)
人工智能·机器学习·ai·聚类
雪雪9081 小时前
Work Agent深度解读:AI如何自主完成多步骤长程工作任务
人工智能
小宋10211 小时前
Recursive Language Models 实战:递归处理超长外部文本
人工智能·深度学习·机器学习
星云低代码开发平台1 小时前
AI 定时任务接 ERP:账号切换后的权限校验与异常状态设计
人工智能·定时任务·erp