当前位置: 首页 > news >正文

串口通讯协议学习

串口通讯(串行通信)是一个广义术语,泛指通过逐位传输数据的通信方式。

若设备标注“支持串口”,需明确具体是哪种硬件标准(如RS-485)以及配套的软件协议(如Modbus)。

在设备通信中,“串口”(串行通信接口)是一个统称,具体硬件协议和标准有多种,主要分为以下几类:


1. 串口硬件协议/标准

1. 常见的串口硬件协议/标准

(1) UART(Universal Asynchronous Receiver/Transmitter)

  • 特点
    • 异步通信,无时钟线,依赖预定义的波特率。
    • 使用TTL电平(3.3V/5V逻辑,0V为低电平)。
    • 点对点通信(1对1),需连接TX(发送)RX(接收)
  • 典型应用
    • 单片机与传感器、蓝牙/WiFi模块的通信(如STM32与HC-05蓝牙模块)。
    • 调试接口(如USB转TTL串口线连接PC与嵌入式设备)。

(2) RS-232

  • 特点
    • 负逻辑电平(±3V±15V,+3V+15V为逻辑"0",-3V~-15V为逻辑"1")。
    • 点对点通信,传输距离较短(一般<15米)。
    • DB9DB25接口(如老式电脑的COM口)。
  • 典型应用
    • 工业设备配置(如PLC编程口)、老式调制解调器。

(3) RS-485

  • 特点
    • 差分信号(A/B两条线,抗干扰强)。
    • 支持多点通信(1主多从,总线拓扑)。
    • 长距离(可达1200米)、高速(最高10Mbps)。
  • 典型应用
    • 工业自动化(如PLC网络)、楼宇自控(如Modbus RTU)。

(4) RS-422

  • 特点
    • 类似RS-485,但仅支持点对多点(1发4收)。
    • 差分信号,抗干扰强,距离远(约1200米)。
  • 典型应用
    • 专业音频设备、工业控制(替代RS-232的长距离场景)。

(5) SPI(Serial Peripheral Interface)

  • 特点
    • 同步通信(有时钟线SCLK),全双工。
    • 4线(SCLK, MOSI, MISO, SS)。
    • 高速(可达数十MHz),短距离(板级通信)。
  • 典型应用
    • Flash存储器、显示屏驱动(如OLED)、高速ADC/DAC。

(6) I²C(Inter-Integrated Circuit)

  • 特点
    • 同步通信(时钟线SCL + 数据线SDA)。
    • 支持多主多从,地址寻址。
    • 速率较低(标准模式100kHz,高速模式400kHz)。
  • 典型应用
    • 传感器(如温湿度传感器)、EEPROM存储。

2. 如何区分这些串口?

协议通信方式电平/信号拓扑结构典型接口
UART异步TTL电平点对点杜邦线/TTL引脚
RS-232异步±3~15V点对点DB9
RS-485异步差分(A/B)多点总线端子台/DB9
RS-422异步差分(A/B)点对多点端子台
SPI同步TTL电平主从4线引脚
I²C同步TTL电平多主多从2线引脚

3. 实际应用中的注意事项

  • 电平兼容性
    • UART(TTL)不能直接接RS-232/RS-485,需电平转换芯片(如MAX232、MAX485)。
    • RS-485设备需终端电阻(120Ω)匹配阻抗。
  • 协议栈
    • 硬件层(如RS-485)仅定义电气特性,实际通信需结合上层协议(如Modbus、CAN等)。
  • 调试工具
    • USB转TTL/UART(如CH340)、USB转RS-485(如FTDI模块)是常用调试工具。

4. 总结

  • **“串口通信”**的硬件协议选择取决于:
    • 距离(短距离用UART/TTL,长距离用RS-485)。
    • 抗干扰(工业环境优先选差分信号RS-485/RS-422)。
    • 设备数量(多点通信需RS-485或I²C)。
    • 速度(高速选SPI,低速选I²C)。

若设备标注“支持串口”,需明确具体是哪种硬件标准(如RS-485)以及配套的软件协议(如Modbus)。

2. UART与RS485的关系

协作关系:
UART负责数据格式(如起始位、数据位、停止位),而RS485负责物理传输(如何将UART的位流变成差分信号)。

RS485必须依赖UART:
RS485本身无数据格式定义,需结合UART(或其他协议)才能完成完整通信。

常见组合:
MCU的UART → RS485转换芯片 → RS485总线
(例如:STM32的TX/RX接MAX485芯片,再连接到RS485网络)

工业场景中“串口”常指RS485(因抗干扰和多设备支持),但嵌入式开发中可能直接指UART(TTL电平)。

3. RS-485 和 RS-232 的关系

1. 相同点

  • 都属于串行通信(数据逐位传输)。
  • 通常基于UART(异步通信协议)进行数据传输。
  • 可用于点对点通信(但RS-485支持多点,RS-232一般仅点对点)。

2. 核心区别

特性RS-232RS-485
电气标准单端信号(±3~15V)差分信号(A/B线,电压差)
通信距离短(<15米)长(可达1200米)
传输速率较低(一般<115.2kbps)较高(最高10Mbps)
抗干扰能力弱(易受噪声影响)强(差分信号抑制共模噪声)
拓扑结构点对点多点总线(1主多从)
连接方式DB9(如电脑COM口)2线(A/B)或4线(全双工)

3. 典型应用场景

  • RS-232
    • 早期计算机串口(COM口)、工业设备配置(如PLC编程口)。
    • 短距离、低速率、点对点通信(如调试接口)。
  • RS-485
    • 工业自动化(Modbus RTU)、楼宇控制、安防系统。
    • 长距离、多设备组网(如传感器网络)。

4. 转换关系

  • RS-232转RS-485
    通过转换器(如MAX232 + MAX485芯片)实现,用于将老式RS-232设备接入RS-485网络。
  • UART转RS-485
    单片机UART(TTL电平)通过MAX485芯片转换为RS-485信号。

上层通信协议

RS-485和RS-232仅定义物理层(如何传输比特流),实际通信需依赖上层协议(定义数据格式、地址、校验等)。常见协议包括:

1. 通用协议
  • Modbus RTU(最常用):
    • 基于RS-485/RS-232的工业协议,采用主从架构。
    • 数据帧格式:设备地址 + 功能码 + 数据 + CRC校验
    • 功能码示例:0x03(读寄存器)、0x06(写单个寄存器)。
  • Modbus ASCII
    • 类似Modbus RTU,但数据以ASCII字符传输(效率低,易调试)。
  • 自定义协议
    • 用户自行定义数据格式(如帧头 + 长度 + 数据 + 校验)。
2. 协议示例对比
协议适用硬件特点典型应用
Modbus RTURS-485简单、开源、广泛支持PLC、传感器
Modbus ASCIIRS-232可读性强、效率低调试场景

关键总结

  1. RS-485 vs RS-232
    • RS-485适合长距离、多设备、抗干扰场景,RS-232适合短距离点对点
    • RS-485需终端电阻(120Ω),RS-232无需。
  2. 上层协议选择
    • 工业领域优先用Modbus RTU,需高速或多主站时选Profibus DP
    • 自定义协议需注意数据帧同步(如帧头/帧尾)和校验(CRC/LRC)。
  3. 调试工具
    • USB转RS-485适配器 + Modbus调试软件(如Modbus Poll)。
    • 逻辑分析仪(抓取UART/RS-485原始数据)。
http://www.xdnf.cn/news/521389.html

相关文章:

  • BiRefNet V3版 - 一个高精度的高分辨率图像抠图模型,AI“抠图之王” 支持50系显卡 本地一键整合包下载
  • 【言语理解】逻辑填空之逻辑对应11
  • 【MySQL】存储过程,存储函数,触发器
  • fcQCA模糊集定性比较分析法-学习笔记
  • OpenHarmony 5.0状态栏息屏状态下充电然后亮屏会出现电量跳变情况
  • 19-I2C库函数
  • ProfibusDP转ModbusRTU的实用攻略
  • WindowsPE文件格式入门11.资源表
  • 算法-js-柱状图中最大的矩形
  • 计算机系统的层次结构
  • 采摘桑葚
  • 中级网络工程师知识点6
  • 掌握生成式 AI 的未来:Google Cloud 全新认证
  • Office 中 VBE 的共同特点与区别
  • 【typenum】 12 类型级数组(array.rs)
  • Node.js 框架
  • 20-HAL库
  • 进程控制总结
  • Spyglass:参数(parameter)及其设置方式
  • 考研数学积分学
  • supervisorctl守护进程
  • PCB设计实践(十九)PCB设计中NPN/PNP选型策略
  • C++(23):容器类<vector>
  • C++控制结构详解:if-else、switch、循环(for/while/do-while)
  • 嵌入式学习笔记 - U(S)ART 模块HAL 库函数总结
  • 开启健康生活的多元养生之道
  • Prism使用消息总线打开窗体的案例(中介者模式)
  • GBS 8.0服装裁剪计划软件在线试用
  • SAPROv5.7
  • Muduo网络库大总结