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)

相关推荐
卓码软件测评7 小时前
第三方软件测评机构:【Gatling与JMeter的架构对比:异步与非阻塞I/O模型如何实现更高并发】
测试工具·jmeter·架构·测试用例·负载均衡·压力测试
美团程序员7 小时前
一篇文章教你搞定:”xx 功能如何测试?“常见面试题型!
测试工具·面试·职场和发展·测试用例
软件测试雪儿13 小时前
高频Postman软件测试面试题
测试工具·lua·postman
2501_9151063214 小时前
iOS App 测试工具全景分析,构建从开发调试到线上监控的多阶段工具链体系
android·测试工具·ios·小程序·uni-app·iphone·webview
小白学大数据16 小时前
构建混合爬虫:何时使用Requests,何时切换至Selenium处理请求头?
爬虫·python·selenium·测试工具
Hacker_Fuchen18 小时前
POST请求提交数据的三种方式及通过Postman实现
自动化测试·软件测试·测试工具·postman
安然无虞18 小时前
JMeter性能测试工具·下
开发语言·测试工具·jmeter
Wpa.wk20 小时前
自动化测试环境配置-java+python
java·开发语言·python·测试工具·自动化
程序员三藏1 天前
Jmeter自动化测试
自动化测试·软件测试·python·测试工具·jmeter·测试用例·接口测试