GPIO, UART, SPI, I2C, ADC, PWM
接口全称核心特点线数速度主要应用GPIO通用输入输出控制电平,读取电平1LED, 按键, 继电器ADC模数转换器将模拟电压转为数字值1中传感器(光, 温, 压)PWM脉冲宽度调制用数字信号模拟模拟量1调光, 调速, 舵机UART通用异步收发器异步,全双工,点对点2低-中蓝牙, GPS, 调试I2C集成电路总线同步,半双工,多设备(2线)2低-中板载传感器, EEPROMSPI串行外设接口同步,全双
1. GPIO - 通用输入输出
-
中文名:通用输入输出
-
核心功能:数字信号的输入和输出。这是最简单、最基础、也是最常用的接口。MCU通过GPIO引脚与外部世界进行最基本的“对话”。
-
工作原理:
-
输出模式:MCU可以控制引脚输出高电平(通常是3.3V或5V,代表数字‘1’)或低电平(0V,代表数字‘0’)。
-
应用:点亮/熄灭LED灯、控制继电器开关、驱动蜂鸣器。
-
-
输入模式:MCU可以读取引脚上的电平状态,是高电平还是低电平。
-
应用:检测按键是否被按下、读取开关状态、判断传感器的高低电平输出。
-
-
-
特点:简单、直接、可配置(通常还可以配置上拉/下拉电阻、输出速度等)。
2. ADC - 模数转换器
-
中文名:模数转换器
-
核心功能:将连续的模拟电压信号转换成离散的数字数值。现实世界是模拟的(电压、温度、光照、压力都是连续变化的),而MCU只能处理数字量,ADC就是连接两者的桥梁。
-
工作原理:ADC会测量引脚上的电压值,并将其转换为一个数字代码。关键参数是:
-
分辨率:用位数表示,如8位、10位、12位、16位。12位ADC意味着它可以将参考电压(如3.3V)分为 2^12 = 4096 份。它能分辨的最小电压变化是 3.3V / 4096 ≈ 0.8mV。
-
采样率:每秒进行转换的次数,单位是
SPS(每秒采样次数)。
-
-
应用:读取电位器位置、测量电池电压、采集各类模拟传感器(光敏、热敏、压力传感器)的数据。
3. PWM - 脉冲宽度调制
-
中文名:脉冲宽度调制
-
核心功能:用数字信号模拟出模拟信号的效果。通过快速开关数字输出,并改变“开”的时间比例(占空比)来控制平均电压或功率。
-
工作原理:
-
占空比:一个周期内,高电平时间所占的比例。50%占空比表示一半时间高,一半时间低。
-
频率:开关的速度。频率需要足够高,以免被控制的设备(如电机)出现抖动或噪音。
-
-
应用:
-
调光:控制LED亮度。
-
调速:控制直流电机转速。
-
舵机控制:通过特定脉宽的脉冲控制舵机角度。
-
DAC:通过RC滤波电路,将PWM平滑成真正的模拟电压。
-
4. UART - 通用异步收发传输器
-
中文名:通用异步收发传输器
-
核心功能:全双工、异步、串行通信。两个设备之间点对点通信的最常见方式。
-
工作原理:
-
异步:通信双方没有统一的时钟线,需要预先约定相同的通信速率(波特率,如9600, 115200)。
-
串行:数据一位一位地依次传输。
-
全双工:可以同时进行发送和接收(需要两根数据线:TXD和RXD)。
-
协议:每个数据包通常以起始位开始,以停止位结束,中间是5-8位数据位, optionally可有校验位。
-
-
特点:硬件简单,只有两根线(TXD发,RXD收),但需要精确的波特率匹配。常见于连接GPS、蓝牙模块、与电脑串口调试助手通信等。
5. I2C - 集成电路总线
-
中文名:集成电路总线
-
核心功能:同步、半双工、多主多从的串行通信总线。用非常少的连线(只需2根!)就可以连接多个设备。
-
工作原理:
-
两根线:
-
SDA:串行数据线,用于传输数据。
-
SCL:串行时钟线,由主机产生,用于同步。
-
-
地址寻址:总线上每个从设备都有一个唯一的7位或10位地址。主机通过发送地址来选择与哪个从机通信。
-
主从结构:通信由主机(通常是MCU)发起和控制。
-
-
特点:节省引脚,支持多设备,但通信速度较慢(标准模式100kbps,快速模式400kbps),通信距离短。广泛用于连接各种低速板载传感器(如温湿度、气压计)、EEPROM存储器等。
6. SPI - 串行外设接口
-
中文名:串行外设接口
-
核心功能:同步、全双工、高速的串行通信总线。是速度最快的串行通信协议之一。
-
工作原理:
-
四根线:
-
MOSI:主设备数据输出,从设备数据输入。
-
MISO:主设备数据输入,从设备数据输出。
-
SCK:时钟信号,由主设备产生。
-
CS/SS:从设备片选信号,由主设备控制(每个从设备都需要一根独立的CS线)。
-
-
工作方式:主设备通过拉低某个从设备的CS线来选中它,然后在SCK时钟的同步下,通过MOSI线发送数据,同时通过MISO线接收数据。
-
-
特点:速度快(可达数十Mbps)、全双工、硬件简单,但占用引脚较多(每增加一个从设备就多一根CS线)。常用于连接Flash存储器、SD卡、显示屏、高速ADC等需要高速数据传输的设备。
总结对比表
| 接口 | 全称 | 核心特点 | 线数 | 速度 | 主要应用 |
|---|---|---|---|---|---|
| GPIO | 通用输入输出 | 控制电平,读取电平 | 1 | - | LED, 按键, 继电器 |
| ADC | 模数转换器 | 将模拟电压转为数字值 | 1 | 中 | 传感器(光, 温, 压) |
| PWM | 脉冲宽度调制 | 用数字信号模拟模拟量 | 1 | - | 调光, 调速, 舵机 |
| UART | 通用异步收发器 | 异步,全双工,点对点 | 2 | 低-中 | 蓝牙, GPS, 调试 |
| I2C | 集成电路总线 | 同步,半双工,多设备(2线) | 2 | 低-中 | 板载传感器, EEPROM |
| SPI | 串行外设接口 | 同步,全双工,高速 | 3+n* | 高 | Flash, SD卡, 显示屏 |
更多推荐



所有评论(0)