返回串口调试

技术知识库 & 调试文档 65 篇硬核手册

Web Serial Pro Multi-Module Offline Documentation Hub

主题 同步中 本地离线 知识库总览
ID: SERIAL-BASIC-09 串口通信核心基础 (Core Serial Basics)

HEX 与 ASCII 串口调试模式选择:何时用十六进制收发

#HEX 与 ASCII 转换#在线 16进制 校验和计算#网页版串口监听器

发送/接收选 ASCII 还是 HEX,完全取决于设备协议语义,不是「高级/低级」之分。选错模式会出现「明明发了、设备没反应」或「接收全是看不懂的字符」——多数不是线坏了。

先说结论 | 协议类型 | 推荐模式 | 例子 | |----------|----------|------| | 人读文本 | ASCII | OKSerial.println、AT、NMEA | | 二进制帧 | HEX | Modbus RTU、CRC 包、含 0x00 的帧 | | 混合 | 接收开 HEX 对照 | 文本日志 + 偶发二进制 | 口诀:记事本能读懂 → ASCII;字段是寄存器/功能码/校验 → HEX。

ASCII(文本)模式 适合: - MCU 日志、OK / ERROR - GPS NMEA:$GPRMC,... - ESP AT:AT+GMR + 回车换行 - 行协议命令 助手按字符显示;发送可配合 \r \n 转义(见《转义字符》文)。注意编码:中文日志乱码是 UTF-8/GBK 问题,与 HEX/ASCII 开关是两层。

HEX(十六进制)模式 适合: - Modbus RTU、自定义传感器帧、带 CRC 的包 - 含 0x00 等非打印字节 此时输入 01 03 00 00 表示四个指令字节,不是字符「0」「1」。必须用 HEX 才能核对 CRC 与字段边界。

本站怎么用 1. 打开 https://www.serialpro.top/ ,连接 COM。 2. 文本协议:发送区 ASCII,需要帧尾时开转义发 CMD\r\n。 3. RTU/二进制:切 HEX 发送,空格分隔字节,不要多发文本换行(除非协议规定)。 4. 接收区建议联调阶段 长期开 HEX 旁路,避免把二进制当成「乱码字」。 5. 核对 CRC:复制 HEX 日志,对照《Modbus CRC16》或设备手册。

常见误区 1. 把 RTU 当文本发送,多了空格含义被误解或附带 \r\n,CRC 全错。 2. ASCII 下「乱码」其实是二进制协议 → 切 HEX。 3. 中文日志乱:先查编码,再查波特率。 4. HEX 里把 0A 当「换行编辑」误发上总线(视工具是否忽略空白)。

快速决策树 1. 手册有功能码/寄存器表?→ HEX。 2. 手册是 AT 或行命令?→ ASCII + 正确帧尾。 3. 不确定?→ 接收开 HEX 看真实字节,再反推。

相关文档 - 转义与 \r\n/help/serial-basic-08 - Modbus 帧:/help/industrial-01 - CRC16:/help/industrial-02 - 乱码排查:/help/fault-01 在 Web Serial Pro 中可一键切换显示与发送格式;联调时 接收开 HEX 能消灭一大类误判。