可以。这是一个典型的串口调试工具(Serial Port Assistant),主要用于电脑通过 COM 串口和单片机、PLC、传感器、串口模块等设备进行数据收发。
我按照截图从左上 → 左下 → 右侧把每个功能解释一下。
功能 | 截图当前值 | 含义 |
|---|---|---|
串口号 | COM1 | 选择电脑使用哪个串口与设备通信,例如 COM1、COM3、COM5。USB 转串口插入电脑后通常会产生一个 COM 口。 |
波特率(支持手动输入) | 9600 | 串口通信速度,单位一般为 bps。常见有 9600、19200、38400、57600、115200。电脑和设备必须设置一致。 |
数据位 | 8 | 每一帧有效数据所占的位数。最常见是 8 位。 |
停止位 | 1 | 一帧数据结束时使用的停止位。常见是 1,也可能是 1.5 或 2。双方需要匹配。 |
校验位 | None | 用于检查传输错误。 |
流控制 | None | 控制数据发送节奏,防止接收方来不及处理。 |
打开串口 | — | 按照上面的参数打开当前 COM 口。打开成功以后才能正常发送和接收数据。 |
截图里的 9600 / 8 / 1 / None,通常可以写成:
9600, 8N1
也就是:9600 波特率 + 8 数据位 + No Parity(无校验)+ 1 停止位。
右上方那个大白框就是接收窗口,设备通过串口发给电脑的数据会显示在这里。
功能 | 含义 |
|---|---|
Hex显示 | 勾选后,接收到的数据按照十六进制显示,而不是按照普通字符显示。 |
接收窗口字节 1000 | 用于限制/管理接收窗口的数据量,截图中设置为 1000 字节。具体达到上限后的处理方式取决于这个软件的实现。 |
清除窗口 | 清空右侧接收窗口中已经显示的数据,不会修改设备本身的数据。 |
举个例子,设备实际发送三个字节:
48 65 6C
如果使用 Hex显示,一般看到:
48 65 6C
如果不使用 Hex,而按照 ASCII 字符显示,则对应:
Hel
所以调试二进制通信协议时,通常会打开 Hex显示。
右下方的大白框是发送信息输入框。
你可以在这里输入需要发给单片机/设备的数据,然后点击右边的 「手动发送」。
截图还提示:
Ctrl + Enter 输入回车 (0x0D, 0x0A)
也就是说发送框支持输入回车、换行等控制字符。
各选项含义如下:
功能 | 含义 |
|---|---|
Hex发送 (如01 02) | 将输入内容按照十六进制字节发送。例如输入 |
自动发送 | 开启以后,不需要一直点击“手动发送”,软件会按照设定时间周期重复发送。 |
每隔 1000 (ms) | 自动发送的时间间隔。1000 ms = 1 秒,也就是每秒发送一次。 |
发送收到的帧 | 从名称来看,是收到一帧数据后将接收到的帧重新发送出去,类似回传/回显功能。 |
帧尾字符 0D | 给数据帧指定结束字符。 |
收到帧尾后发送 | 检测到上面设置的帧尾字符之后,再触发相应发送操作。通常与“发送收到的帧”等功能配合使用。 |
加载自动发送指令 | 从预先配置的指令内容中加载自动发送命令,适合循环发送多条测试指令。具体格式需要结合这个软件的说明。 |
手动发送 | 将当前发送信息框里的内容立即通过串口发送出去。 |
其中 Hex发送 特别容易混淆。
例如你输入:
01 02
不勾 Hex发送时,通常发送的是字符:
'0' '1' ' ' '0' '2'
对应 ASCII 字节大致是:
30 31 20 30 32
而勾选 Hex发送后,则真正发送两个字节:
01 02
所以如果设备协议写着:
发送:AA 01 03 FF
一般就应该勾选 Hex发送,然后输入:
AA 01 03 FF
截图底部还有几个参数:
功能 | 含义 |
|---|---|
发送—应答时间差 | 统计从发送数据到收到设备应答之间经过了多长时间。单位 ms。可用于测试设备响应速度。 |
均值 | 多次发送/应答之后计算平均响应时间。 |
计数TX | TX = Transmit,表示发送数据的计数。通常用于统计发送次数/发送帧数,具体以软件实现为准。 |
RX | RX = Receive,表示接收数据的计数。通常用于统计接收次数/接收帧数。 |
重新计数 | 将 TX、RX 等统计计数清零,重新开始统计。 |
如果你只是想连接一个单片机,然后发送命令、查看返回数据,主要关注:
串口号 → 波特率 → 数据位/停止位/校验位 → 打开串口 → Hex发送 → 手动发送 → Hex显示
例如设备说明书要求:
115200,8N1
发送指令:
01 03 00 00 00 02 C4 0B
那么通常操作就是把串口设置成 115200 / 8 / 1 / None,打开串口;如果这串数据是协议规定的十六进制字节,就勾选 Hex发送,输入 01 03 00 00 00 02 C4 0B 后点击手动发送。如果返回值也是二进制协议数据,则同时勾选 Hex显示。
如果你是在调 Modbus RTU、STM32、51 单片机、ESP32 或其他串口设备,把设备的通信协议/指令格式发给我,我也可以直接告诉你这个软件每一项应该怎么设置、发送框具体填什么、收到的数据应该怎么看。