HEX报文协议打包生成工具

本工具可以用于灵活定制各种格式的报文。以下是定制报文中每个字段的说明:

  • isbig:指示报文中的字节顺序是否为大端序(Big Endian)。如果为true,则表示使用大端序;如果为false,则表示使用小端序。
  • frame:报文的字段定义数组,每个字段定义包括字段名称、字段类型、字段长度以及可选的其他属性。
  • name:字段名称,用于标识字段的含义,可以自定义,不能重复。
  • type:字段类型,指定字段的数据类型。类型包括fix(固定值)、len(长度字段)、dec(十进制数值)、str(字符串)、hex(十六进制数值)和crc(CRC校验值)等。
  • len:字段长度,指定字段的字节长度。hexstr类型不需要长度,会自动计算;crc不需要,会根据mode类型自动计算。
  • refer:长度参考字段,用于指定字段长度的参考字段的名字。例如,len字段的长度可以参考strhex字段值的长度加偏移量。
  • value:字段的值。dechexstr类型不需要值,界面会自动生成输入框,dec只能输入10进制数如1234,hex只能输入16进制数如11aabbcc,len类型的value代表初始长度,最终值是初始值加引用长度值;crc类型的value代表校验跳过开头的长度的字节,默认0从头开始校验。
  • mode:CRC校验模式,用于指定CRC校验的算法。常见的模式包括crc8crc16crc32等。

以上是对每个字段的简要说明。根据这些字段定义,你可以使用该工具生成符合特定格式的报文,并根据需要设置字段的值。

举例,编辑frame.txt文件,定制报文格式

{

"isbig":true,

"frame":[

{"name":"head","type":"fix","len":2,"value":0xffaa},

{"name":"len","type":"len","len":2,"refer":"data","value":6},

{"name":"dec1″,"len":2,"type":"dec"},

{"name":"dec2″,"len":2,"type":"dec"},

{"name":"str1″,"type":"str"},

{"name":"data","type":"hex"},

{"name":"crc","type":"crc","mode":"crc16″,"value":"0″}],

}

打开软件如上图,dec1输入1,dec2输入11,str1输入22,data输入3344,结果输出:FF AA 00 08 00 01 00 0B 32 32 33 44 D7 45

根据配置文件,len的值为data长度加6等于8,dec2的位置输入十进制数11结果为0x000b,字符串"22"转成hex后为3232,data内容保持不变,crc算法为CRC16/CCITT-FALSE,计算范围为从开头到数据结尾,如果帧定义中crc段value>0,则代表偏移value个字节后开始计算。

软件下载地址:https://www.armfun.cn/wp-content/uploads/2023/12/HEX报文协议生成工具.rar(解压码:www.armfun.cn)

相关推荐
ANYOLY1 小时前
JVM 线上调优与排查指南
jvm·测试工具
普通网友7 小时前
Java在云计算环境下的微服务架构设计与实践探析
测试工具
桃子不淘气9 小时前
step1:创建项目
测试工具
歪歪10013 小时前
ts-jest与其他TypeScript测试工具的对比
前端·javascript·测试工具·typescript·前端框架
Run Freely93714 小时前
postman-Newman插件
测试工具·postman
Run Freely9371 天前
接口测试-postman-全局变量与环境变量
测试工具·postman
我的xiaodoujiao1 天前
从 0 到 1 搭建 Python 语言 Web UI自动化测试学习系列 8--基础知识 4--常用函数 2
前端·python·测试工具·ui
程序员小远1 天前
常用的测试用例
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
小熊出擊3 天前
【pytest】finalizer 执行顺序:FILO 原则
python·测试工具·单元测试·pytest
云闲不收3 天前
接口请求工具对比 apifox apipost swagger postman等
测试工具·postman