文章目录
- UART与RS232/RS485
-
- [1. TTL](#1. TTL)
-
- [1.1 TTL 与 RS232 的核心区别](#1.1 TTL 与 RS232 的核心区别)
- [1.2 负逻辑电平和 TTL 电平的定义标准](#1.2 负逻辑电平和 TTL 电平的定义标准)
-
- [1.2.1 负逻辑电平(以 RS232 为例)](#1.2.1 负逻辑电平(以 RS232 为例))
- [1.2.2 TTL 电平(正逻辑)](#1.2.2 TTL 电平(正逻辑))
- [2. 总结](#2. 总结)
- [2. RS232(串行异步通信接口)](#2. RS232(串行异步通信接口))
-
- [2.1 RS232 解决了 UART 的哪些问题?](#2.1 RS232 解决了 UART 的哪些问题?)
- [2.2 RS232 的缺点](#2.2 RS232 的缺点)
- [2.3 RS232 与 RS485 的核心区别](#2.3 RS232 与 RS485 的核心区别)
- [2.4 工程应用场景](#2.4 工程应用场景)
-
- [2.4.1 RS232 的典型场景](#2.4.1 RS232 的典型场景)
- [2.4.2 RS485 的典型场景](#2.4.2 RS485 的典型场景)
- [3. 总结](#3. 总结)
- [3. RS485(串行异步通信接口)](#3. RS485(串行异步通信接口))
- [4. I2C(串行同步通信接口)](#4. I2C(串行同步通信接口))
- [5. `SPI` [Serial Peripheral Interface] (串行同步通信接口)](#5.
SPI
[Serial Peripheral Interface] (串行同步通信接口)) - IIC和SPI的异同
- [6. Modbus](#6. Modbus)
- 常见串口通信接口
UART与RS232/RS485
1. TTL
TTL 的全称是 Transistor-Transistor Logic(晶体管-晶体管逻辑),是一种基于双极型晶体管的数字电路电平标准,广泛用于芯片内部或短距离设备间的通信。
1.1 TTL 与 RS232 的核心区别
维度 | TTL | RS232 |
---|---|---|
电平范围 | 逻辑 1:2.0V~5.0V (典型 3.3V/5V); 逻辑 0:0V~0.8V |
逻辑 1:-3V~-15V (典型 -12V); 逻辑 0:+3V~+15V (典型 +12V) |
逻辑方式 | 正逻辑:高电压(接近电源)表示"1",低电压(接近地)表示"0" | 负逻辑:负电压表示"1",正电压表示"0" |
传输距离 | 短距离(通常<1 米),抗干扰能力弱 | 中距离(最远 15 米),抗干扰能力强(宽幅电平提升容限) |
接口形式 | 无标准化接口(常用排针、杜邦线),多用于芯片间内部通信 | 标准化接口(DB9/DB25 连接器),多用于设备间外部通信(如电脑与外设) |
应用场景 | 嵌入式设备内部(如 MCU 与传感器、模块通信) | 工业设备、电脑外设(如打印机、调制解调器)的远距离通信 |
电平转换 | 需通过 MAX232 等芯片转换为 RS232 电平才能与 PC 串口通信 | 直接兼容老式 PC 串口,无需转换(但需注意电平极性) |
1.2 负逻辑电平和 TTL 电平的定义标准
1.2.1 负逻辑电平(以 RS232 为例)
- 定义 :用负电压 表示逻辑"1",正电压表示逻辑"0"(与人类直觉相反,故称"负逻辑")。
- 标准范围 :
- 逻辑 1(高电平):
-3V ~ -15V
(典型值 -12V); - 逻辑 0(低电平):
+3V ~ +15V
(典型值 +12V)。
- 逻辑 1(高电平):
- 设计目的:通过宽幅电压提升抗干扰能力,适合中距离传输(如工业设备间通信)。
1.2.2 TTL 电平(正逻辑)
- 定义 :用高电压 表示逻辑"1",低电压表示逻辑"0"(符合人类直觉,故称"正逻辑")。
- 标准范围 :
- 逻辑 1(高电平):
2.0V ~ 5.0V
(取决于系统电压,典型 3.3V 或 5V); - 逻辑 0(低电平):
0V ~ 0.8V
。
- 逻辑 1(高电平):
- 设计目的:电路简单、功耗低,适合芯片间短距离通信(如单片机与传感器)。
2. 总结
TTL 是芯片级短距离通信的正逻辑电平标准,而 RS232 是设备级中距离通信的负逻辑电平标准。两者的核心差异在于电平范围、逻辑极性和传输距离 ,工程中需通过电平转换芯片(如 MAX232)实现兼容。
2. RS232(串行异步通信接口)
串行异步通信接口,无时钟信号
2.1 RS232 解决了 UART 的哪些问题?
从 UART"电气接口不统一""抗干扰能力差""通信距离极短"的痛点出发,RS232 的改进如下:
UART 痛点 | RS232 的解决方案 |
---|---|
电气接口不统一 | 1. 定义标准电气特性 :逻辑 1 对应 -3~-15V,逻辑 0 对应 +3~+15V(通常为 ±12V); 2. 规范硬件接口:使用 DB9/DB25 连接器(常用 3 线:TXD、RXD、GND)。 |
抗干扰能力差 | 采用宽幅电平(±12V 替代 TTL 的 3.3V/5V),提升抗干扰容限(噪声需超过 ±3V 才会误判)。 |
通信距离极短 | 单端传输下最大距离约 15 米(波特率 ≤20kbps 时),远优于 UART 的"板级芯片间通信"距离。 |
2.2 RS232 的缺点
尽管解决了 UART 的部分问题,RS232 仍存在以下局限:
-
抗干扰能力有限 :
采用单端传输(信号以"地"为参考),易受共模干扰(如设备间地电位差、电磁辐射)。工业环境中(如变频器附近),误码率可能高达 10%。
-
传输距离与速率矛盾 :
速率越高,传输距离越短:
- 9600bps 时,优质屏蔽线可传 20~30 米;
- 115200bps 时,距离需限制在 5 米以内,否则信号衰减导致误码。
-
电平转换复杂 :
需通过 MAX232/MAX3232 等芯片将 TTL 电平(3.3V/5V)转换为 RS232 电平(±12V),增加硬件成本与故障点
-
接口电平高,易损坏芯片 :
接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容,所以需要使用电平转换芯片才能与TTL电路连接
-
扩展性差 :
仅支持点对点通信(1 主 1 从),无法实现多设备组网。
2.3 RS232 与 RS485 的核心区别
RS485 是针对 RS232 缺点的升级方案,两者差异如下:
维度 | RS232 | RS485 |
---|---|---|
传输方式 | 单端传输(信号对地) | 差分传输(信号对 A/B 线) |
抗干扰能力 | 弱(易受共模干扰) | 强(差分信号抵消共模干扰) |
传输距离 | 最大 15 米(速率 ≤20kbps) | 最大 1200 米(速率 ≤100kbps) |
传输速率 | 最高 20kbps(15 米内) | 最高 10Mbps(10 米内) |
通信方式 | 全双工(点对点) | 半双工/全双工(总线型,多主多从) |
拓扑结构 | 点对点(1 对 1) | 总线型(最多 32 个节点,中继器可扩展) |
终端匹配 | 无需终端电阻 | 需在总线两端加 120Ω 终端电阻 |
2.4 工程应用场景
2.4.1 RS232 的典型场景
- 设备调试与维护:计算机通过 RS232 连接 PLC、工业仪表,实时读取数据或修改参数(如实验室环境、生产线下位机调试)。
- 短距离旧设备通信:连接条形码扫描器、串口打印机、老式 Modem 等(如超市收银系统、工业产线的老旧传感器)。
- 点对点控制:小型设备间的指令传输(如智能家电与遥控器的近距离通信)。
2.4.2 RS485 的典型场景
- 工业自动化组网:PLC 与变频器、传感器(如温湿度、压力传感器)组成分布式网络(如楼宇自控系统、智能电网数据采集)。
- 长距离数据传输:跨车间/厂区的信号传输(如煤矿井下传感器组网、城市路灯控制系统)。
- 多设备总线通信:支持 Modbus RTU 等协议,实现 1 主多从通信(如智能家居总线、工业机器人集群控制)。
3. 总结
RS232 是 UART 的"电气层升级",解决了电平不统一、距离短的问题,但受限于单端传输和点对点拓扑;RS485 则通过差分传输和总线结构,在抗干扰、距离、扩展性上更适配工业场景。实际工程中,短距离调试选 RS232,长距离工业组网选 RS485。
3. RS485(串行异步通信接口)

-
接口电平低,不易损坏芯片 :
逻辑1
以两线间电压差为+(2-6)V
表示,逻辑0
以两线间电压差为-(2-6)V
表示。接口信号电平比 RS232 低 -
传输速率高 :
速率越高,传输距离越短:
- 10 米时,最高传输速率可以达到35Mbps;
- 1200米时,传输速率可以达到100Mbps。
-
抗干扰能力强 :
RS485采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好。
-
传输距离远,支持节点多 :
最长可传输1200m以上,一般最大支持32个节点。
4. I2C(串行同步通信接口)
由SDA
和SCL
构成的两线式半双工
串行总线,同时处于高电平时规定为总线的空闲状态。此时各个器件的输出场效应管均处于截至状态,即释放总线,由两条信号线各自的上拉电阻把电平拉高。

起始信号
当SCL为高电平期间,SDA由高到低的跳变;启动信号是一种电平跳变的时序信号
,而不是一个电平信号;
停止信号
当SCL为高电平期间,SDA由低到高的跳变;停止信号也是一种电平跳变的时序信号
,而不是一个电平信号;
应答信号
发送器每发送一个字节,就在时钟脉冲9期间释放数据线,由接收器反馈一个应答信号。
应答信号为低电平时,规定为有效应答位(ACK简称应位),表示接收器已经成功地接收了该字节;
应答信号为高电平时,规定为非应答位(NACK),一般表示接收器接收该字节没有成功。
对于反馈有效应答位ACK的要求是,接收器在第9个时钟脉冲之前的低电平期间将SDA线拉低,并且确保在该时钟的高电平期间为稳定的低电平
数据信息
I2C总线进行数据传递时,时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的电平状态才允许变化。
即:数据在SCL的上升沿到来之前就要准备好,并在下降沿到来之前必须稳定
5. SPI
[Serial Peripheral Interface] (串行同步通信接口)
是一种高速的全双工
同步的通信总线,并在芯片管脚上只占用四根线,节约芯片管脚,节省PCB空间,主要应用EEPROM、Flash、RTC,ADC还有数字信号处理器、数字信号解码器
SPI接口简介
MISO 主设备数据输入,从设备数据输出
MOSI主设备数据输出,从设备数据输入
SCLK时钟信号,由主设备产生
CS(NSS)从设备片选信号,由主设备控制
通信过程
SPI总线在进行数据传送时先传送高位,后传送低位:数据线为高电平表示逻辑1,低电平表示逻辑0;
一个字节传送完成无需应答即可开始下一个字节的传送;
SPl总线采用同步方式工作,时钟线在上升沿或下降沿时发送器向数据线上发送数据,在紧接着的下降沿或上升沿时接收器从数据线上读取数据,完成一位数据传送,八个时钟周期即可完成一个字节数据的传送;
IIC和SPI的异同
- 相同点
- 均采用串行、同步的方式
- 均采用TTL电平,传输距离和应用场景类似(
板子内部芯片之间通信
) - 均采用主从方式工作
- 不同点
- IIC为半双工,SPI为全双工
- IIC有应答机制,SPI无应答机制
- IIC通过向总线广播从机地址来寻址,SPI通过向对应从机发送使能信号来寻址
- IIC的时钟极性和时钟相位固定,SPl的时钟极性和时钟相位可调
6. Modbus
常见串口通信接口
以下是补充完善后的常见串行通信接口表格 ,从引脚、通信方式、方向、典型应用、速率、拓扑等维度梳理,方便对比理解:
通信标准 | 引脚说明 | 通信方式 | 通信方向 | 典型应用场景 | 速率范围 | 拓扑结构 |
---|---|---|---|---|---|---|
UART(TTL电平) | TXD(发送端)、RXD(接收端)、GND(公共地) | 异步通信 | 全双工 | 板级芯片间通信(如MCU间短距传输) | 典型9600bps~115200bps | 点对点 |
RS232(UART电气扩展) | TXD、RXD、GND(基础); 可选RTS(请求发送)、CTS(清除发送)等握手线 | 异步通信 | 全双工 | 短距离设备调试(如PC与串口模块、老式Modem) | 最高~20kbps(15米内) | 点对点 |
RS485(UART电气扩展) | A(差分正)、B(差分负)、GND(可选) | 异步通信 | 半双工(需分时收发) | 工业长距离组网(如PLC、传感器集群、智能电表) | 100kbps(1200米)~10Mbps(短距离) | 总线型(最多32节点,可通过中继扩展) |
单总线(1-Wire) | DQ(发送/接收端,需外接上拉电阻) | 异步通信 | 半双工 | 温度传感器(DS18B20)、EEPROM、唯一ID芯片 | 最高~16kbps | 总线型(一主多从,主机控制总线) |
SPI | SCK(同步时钟)、MISO(主机输入/从机输出)、 MOSI(主机输出/从机输入)、CS(片选,多从机时需) | 同步通信 | 全双工 | Flash存储、ADC采集、LCD显示模块 | 几Mbps~几十Mbps(高速SPI可达50+Mbps) | 一主多从(通过CS 片选区分从机) |
I2C | SCL(同步时钟)、SDA(数据输入/输出端) | 同步通信 | 半双工 | 传感器(如温湿度、加速度)、EEPROM、模块间低速率通信 | 标准模式100kbps; 快速模式400kbps; 高速模式3.4Mbps | 总线型(一主多从或多主多从,通过从机地址区分设备) |
补充说明:
- UART与RS232/RS485的关系 :UART是"异步收发器"的逻辑层 (定义时序),RS232/RS485是UART的电气层扩展(定义电平、接口)。
- 全双工 vs 半双工 :全双工可同时收发 (如UART的TX和RX独立);半双工需分时收发(如I2C的SDA、单总线的DQ同一时刻只能传一个方向的数据)。
- 同步 vs 异步 :同步通信需时钟线 (如SPI的SCK、I2C的SCL)同步数据;异步通信无时钟线,靠波特率 (UART)或固定时序(单总线)同步。
电平协议转换芯片
