面试之嵌入式基础知识:uart、i2c、spi

UART

UART 是异步、全双工、点对点通信,只有 TX、RX 两根数据线,没有时钟线,收发靠相同波特率同步。一帧数据包含起始位、数据位、校验位、停止位,结构简单,多用于串口打印、模块调试等低速场景。

I²C

I²C 是同步、半双工、多主多从协议,只有 SCL、SDA 两根线。采用开漏输出,只能拉低、不能主动输出高电平,所以必须接上拉电阻提供高电平,同时支持多主机总线仲裁。起始信号:SCL 为高电平时,SDA 从高变低。

SPI

SPI 是同步、全双工、一主多从协议,包含 SCLK、MOSI、MISO 和 CS 片选线。通过 CPOL、CPHA 配置四种工作模式,没有应答机制,通信速度快,适合 Flash、屏幕等高速外设,多从机通过独立 CS 片选控制。

三者对比总结

UART、I²C、SPI都是常用串行通信协议。

UART是异步通信,没有时钟线,靠波特率同步,点对点、全双工,适合串口打印和简单模块通信。

I²C是同步半双工,只有SCL、SDA两根线,开漏输出需要上拉,支持多主多从和ACK应答,省IO但速度一般。

SPI是同步全双工,有时钟和片选线,一主多从、无应答,速度最快,适合高速外设,但占用引脚更多。

简单说:调试用UART,省IO用I²C,高速用SPI。

相关推荐
开发笔记-阿牛2 小时前
解析一款有意思的产品||CK6159A语音芯片设计的儿童专注力训练机-舒尔特玩具
stm32·单片机·嵌入式硬件·音频
残影飞雪3 小时前
ESP32-C5下载烧录固件失败报错的原因
单片机·嵌入式硬件
搞全栈小苏4 小时前
SIMetrix_simplis8.4安装教程——附安装包
stm32·单片机·嵌入式硬件·电力电子
qq_573967825 小时前
STM32控制器
stm32·单片机·嵌入式硬件
某林2126 小时前
履带小车底盘stm32F103RCT6开发
人工智能·stm32·单片机·嵌入式硬件·架构·人机交互·ros2
sramdram7 小时前
低功耗MCU微控制器在动态血糖仪(CGM)中的应用方案
单片机·嵌入式硬件·mcu·mcu微控制器
Dlrb12117 小时前
ARM--IMX6ULL的SDK学习,BSP开发工程管理,以及链接脚本与Makefile的编写
单片机·嵌入式硬件·arm·sdk·链接脚本·i.mx6ull·cortex-a7
李永奉7 小时前
杰理可视化SDK开发-配置ANC主动降噪功能模块教程
单片机·嵌入式硬件·物联网
云泽8088 小时前
嵌入式环境搭建(一):Keil MDK5 安装流程及 DFP 器件包配置实战
嵌入式硬件·keil5·keil mdk5·dfp器件包配置
做萤石二次开发的哈哈8 小时前
萤石 ERTC Windows SDK 包含哪些类型定义?
stm32·单片机·嵌入式硬件