串口调试助手使用规范(试用) ——截取指令方法版本:V15.01 日期:2015.0128 类别:APP 使用规范1串口调试助手使用规范(试用) 截取指令方法广州市英沙电子系统有限公司 2015-01-28 发布串口调试助手使用规范(试用) ——截取指令方法版本:V15.01 日期:2015.0128 类别:APP 使用规范2目 录1 引言 ................................................................................................................................................................................... 3 2 使用前准备........................................................................................................................................................................ 3 3 串口调试助手及其安装 ................................................................................................................................................... 3 4 串口线与设备的物理连接 ............................................................................................................................................... 4 5 串口调试助手截取指令步骤 ............................................................................................................................................ 4 6 分析截取的指令............................................................................................................................................................... 6 串口调试助手使用规范(试用) ——截取指令方法版本:V15.01 1 引言 日期:2015.0128 类别:APP 使用规范3在高速公路机电工程应用中,经常会出现一些问题, 如车道计算机不能控制费额显示器,字符叠加器不能 叠加字符,情报板无法通讯等等问题。
这个时候,设备供应商与系统集成商就会出现相互扯皮的事情,一般会认 为自己一方没有过错,肯定是对方的设备/上位机软件/通讯链路等出现问题了。
此时,我们除了要心平气和,好 好沟通,也需要通过一些方法,来查找问题所在。
通过串口调试助手,我们可以截取上位机发送的指令,对截取的指令做各种分析,我们可以解决以下问题: 1-1 上位机通讯协议是否与设备供应商提供的设备通讯协议一致; 1-2 上位机发送的指令是否与设备供应商提供的设备存在细微的差异,因为对于通讯协议,可能会出现理解 上的偏差。
程序员认为己方已经充分理解了通讯协议内容,所以不会意识到存在一些认识上的偏差或者歧义。
另 外一点,在功能上,某些指令可能并不重要,所以在编写程序时,会对一些功能做增删; 1-3 通过上位机发送的指令,我们也可以发现有时通讯链路也会存在问题,如线接反了,串口端口号设置错 了,波特率设置错了等等。
串口调试助手是串口调试相关工具,一般支持 9600,19200 等常用各种波特率及自定义波特率,可以自动识 别串口,能设置校验、数据位和停止位,能以 ASCII 码或十六进制接收或发送任何数据或字符,可以任意设定 自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。
硬件连接方面,传统台式 PC 机支持标准 RS232 接口,但是带有串口的笔记本很少见,所以需要 USB/232 转换接口,并且安装相应驱动程序。
本文将以宏晶科技(STC)ISP 在系统编程工具自带的串口调试助手为例,对如何用串口调试助手接收上位 机(如车道计算机、PLC 或远程计算机等)发送的指令做一指引。
2 使用前准备2-1 串口线准备:USB 转串口线或直接用串口线,串口线必须包含第 2、3、5 脚;如使用 USB 转串口线来接收 上位机发送的指令,事先必须安装驱动程序。
2-2 上位机准备:如收费系统中,上位机一般指的是车道计算机。
2-3 下位机准备:安装有串口调试助手的笔记本一台,这里笔记本相当于就是设备供应商提供的设备,用来接收 上位机发送的指令。
如不准备笔记本,用户也可以直接用车道计算机既做上位机,也做下位机。
此时,串口调试助手需安装在车 道计算机中。
用户通过车道计算机的一个串口(如 COM1)发送指令,然后用另一个串口(如 COM2)来接收指 令都是可以的。
3 串口调试助手及其安装宏晶科技编程软件(自带串口调试助手功能)可以在单片机制造商网站下载,并按提示安装即可。
宏晶科技网址为:,编程软件为 stc-isp-15xx-v6.82E.exe; 用户可以根据需要在上述网站下载最新版本 ISP 编程软件。
用户也可以通过百度搜索“串口调试助手”,网上这方面的应用软件很多。
串口调试助手使用规范(试用) ——截取指令方法版本:V15.01 4 串口线与设备的物理连接 日期:2015.0128 类别:APP 使用规范4请用串口线把上位机(如车道计算机)与下位机(如笔记本)连接起来,连接时请务必注意串口线要连接正 确,即按我们通常讲的交叉接线方式,如下表所示: 上位机(如车道计算机)COM 端 引脚 2,RXD 引脚 3,TXD 引脚 5,GND 请确定连线正确。
下位机(如笔记本)COM 端 引脚 3,TXD 引脚 2,RXD 引脚 5,GND 备注 可不接 必须接 必须接5 串口调试助手截取指令步骤5-1 串口调试助手及其界面 宏晶科技提供的 ISP 编程软件(自带串口调试助手,以 stc-isp-15xx-v6.82E.exe 版本为例)打开后界面如下:串口助手图 5-1 宏晶科技 ISP 编程软件界面 5-2 请根据图 5-1 标注的位置点击“串口助手”,这样就回到了串口调试助手界面,如下:串口调试助手使用规范(试用) ——截取指令方法版本:V15.01 日期:2015.0128 类别:APP 使用规范5图 5-2-1 串口调试助手界面 我们只看右边方框部分,此部分分四个区,分别是接收缓冲区、发送缓冲区、多字符串发送以及下方的串口 设置区。
因为这里我们只涉及接收上位机指令,所以只用到接收缓冲区与串口设置区。
如下图所示。
接收缓冲区串口设置区图 5-2-2 串口调试助手界面串口调试助手使用规范(试用) ——截取指令方法版本:V15.01 日期:2015.0128 类别:APP 使用规范65-3 具体步骤 首先,选择“串口”号,串口号必须设置正确,用户如果不清楚该串口线对应的串口号,可在桌面右击“我 的电脑”,选择“设备管理器”,然后点击“端口(COM 和 LPT)”查询; 点击 “打开串口” , 点击后 “打开串口” 变为 “关闭串口” , 此时端口号变灰色 (无法修改, 除非关闭串口) ; 把波特率设置成与通讯协议规定的波特率一致,波特率必须设置正确; 接收缓冲区选择“HEX 模式”; 上位机(比如车道计算机)开始发送指令(比如:发送收费信息指令),下位机(笔记本)同步接收上位机 发送出来的指令,即显示在接收缓冲区框内内容;如下图 5-3 所示:接收缓冲区 接收的指令图 5-3 串口调试助手接收上位机指令 上位机发送完毕后,把串口调试助手接收的指令复制下来保存成文本文件或点击“保存接收数据”,在弹出 的界面“保存类型(T):”选择“Text file(*.txt)”,文件名(N)不做要求。
文件最好保存成6 分析截取的指令下面以图 5-3 为例做一说明。
打开图 5-3 保存的文本文件,内容如下: 02 30 30 30 31 00 00 FD 1E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03串口调试助手使用规范(试用) ——截取指令方法版本:V15.01 日期:2015.0128 类别:APP 使用规范7通过观察,可看出一些规律,即上述内容实际是由 2 条指令组成的,如下: 02 30 30 30 31 00 00 FD 1E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 02 30 30 30 36 00 00 78 8E 03 其中第 1 条发送了 1 次,第 2 条发送了 7 次。
请把此内容与设备供应商提供的协议内容作对比,即可初步判断是否为通讯协议不一致问题。
你也可以用设备供应商提供的测试工具来发送同样的指令, 把这些指令接收下来。
然后与从系统集成商的上 位机软件截取的指令作对比,可判断通讯协议是否存在不一致问题。
如果你对截取的指令无法做出判断,请把这些指令发给设备供应商售后服务人员或相关软件/测试工程师, 以供进一步分析。
。