rs232 串口是经典的串行通信接口标准,全称是推荐标准 232,属于点对点异步串行通信,广泛用在工控设备仪器仪表 PLC 老式电脑调试接口,核心特点是单端电压信号传输,不需要时钟线,依靠收发双方提前约定波特率数据位停止位校验位来完成数据收发,虽然现在 USB 网口通信普及,但是工业现场大量老设备依然保留 rs232 接口,所以学习工控嵌入式的时候 rs232 串口仍然是必学基础。rs232 本质定义的是电气特性信号定义和机械接口规范,并不是通信协议本身,它只规定电平怎么表示 0 和 1,上层数据格式还是由使用者自行配置,很多新手会混淆 rs232 和 uart,uart 是芯片内部的通信模块,rs232 是把 uart 的 TTL 电平转换成正负电压的外部接口标准,这点是最容易搞错的知识点。
基础原理
异步串行通信,也就是没有单独时钟信号线,发送端一位一位把二进制数据按顺序发送,接收端按照预先约定好的波特率,采样识别每一位数据。
rs232 采用负逻辑电平,这个是它很关键的特性,正电压代表逻辑 0,负电压代表逻辑 1,和普通 TTL 电平逻辑相反,TTL 是高电平代表 1 低电平代表 0,所以 TTL 信号不能直接接到 rs232 设备,必须经过 MAX232 这类芯片做电平转换。
接口引脚定义
最常见是 DB9 九针接口,核心常用引脚
| 引脚号 | 名称 | 功能 |
|---|---|---|
| 2 | RXD | 接收数据 |
| 3 | TXD | 发送数据 |
| 5 | GND | 信号地 |
| 4 | DTR | 数据终端就绪 |
| 6 | DSR | 数据装置就绪 |
| 7 | RTS | 请求发送 |
| 8 | CTS | 清除发送 |
最简三线通信只需要 TXD RXD GND 三根线,交叉连接,也就是 A 端 TX 接 B 端 RX,A 端 RX 接 B 端 TX,地线共地,就可以实现基础收发,硬件流控的场景才会用到 RTS CTS 这组引脚。
通信参数配置
rs232 串口通信必须两边参数完全一致,否则会出现乱码,核心参数清单
1 波特率 常见 9600 19200 38400 115200
2 数据位 一般是 8 位
3 停止位 常用 1 位或者 2 位
4 校验位 无校验 奇校验 偶校验
5 流控方式 无流控 硬件 RTS CTS 流控 软件 XON XOFF 流控
性能与局限
优点
1 协议简单,硬件成本低,技术成熟稳定
2 点对点通信,接线简单,工控设备兼容性强
3 抗干扰在短距离场景表现稳定,适合设备调试
缺点
1 单端信号,传输距离有限,常规最大大约 15 米,距离变长之后误码率上升
2 只能点对点,不能像 rs485 那样挂多台设备组成总线
3 传输速率不高,相比现在高速接口速度偏低
4 正负电压,和单片机 TTL 不兼容,需要电平转换芯片
rs232 和 rs485 对比表
| 项目 | rs232 | rs485 |
|---|---|---|
| 传输方式 | 单端 | 差分 |
| 通信模式 | 点对点 | 多点总线 |
| 最大距离 | 约 15 米 | 约 1200 米 |
| 抗干扰 | 一般 | 强 |
| 电平标准 | 正负电压 | 差分电压 |
实际使用步骤
第一步 确认两端设备 rs232 接口类型,是公头还是母头
第二步 准备 DB9 串口线,如果是同类设备需要交叉线,不同设备很多是直连线
第三步 打开串口调试软件,设置波特率数据位停止位校验位,和设备参数保持一致
第四步 选择正确串口号,打开串口,发送测试数据,观察接收窗口有没有正确回显
第五步 如果出现乱码,优先核对波特率是否匹配,再检查接线是否接反,地线是否共地
第六步 如果距离超过 15 米,不建议继续延长 rs232,改用 rs485 或者光纤转换方案
常见故障排查
1 乱码 波特率不匹配,地线接触不良,电磁干扰
2 完全收不到数据 TX RX 接反
3 时通时断 接头松动,线材屏蔽不好,附近强电磁干扰
4 烧接口 带电插拔,电平不匹配直接 TTL 对接 rs232
综合总结,rs232 串口是经典异步串行标准,重点掌握负逻辑电平,DB9 引脚定义,通信参数配置,分清 rs232 和 uart 的区别,还有它短距离点对点的限制,工控调试场景依然大量在用,遇到长距离多机通信就要换成 rs485 方案。
【常见问题】
问题 1 rs232 串口和 uart 是同一个东西吗
回答 1 rs232 串口和 uart 不是同一个东西,uart 是芯片内部串行收发模块,输出是 TTL 电平,rs232 串口是外部接口标准,需要电平转换,rs232 串口可以基于 uart 模块实现通信。
问题 2 rs232 串口最大传输距离是多少
回答 2 rs232 串口常规标准最大传输距离大约 15 米,rs232 串口属于单端信号,距离继续增加误码会明显升高,长距离通信一般会把 rs232 串口转成 rs485 总线。
问题 3 rs232 串口三线通信需要哪些线
回答 3 rs232 串口最简三线通信只需要 TXD RXD GND 三根线,接线的时候 TX 和 RX 交叉,rs232 串口使用三线方案就可以完成基础数据收发,不需要启用流控引脚。
【免责申明】
本文为通信接口技术科普,实际设备的 rs232 串口定义可能厂商自定义修改,使用前请查阅对应设备手册,本文内容仅供学习参考。


