如何使用 Bittly 进行串口指令调试 - 复杂参数构建与解析

在使用串口进行数据收发时, 如果数据内容比较复杂, 例如包含了时间戳或者校验码等需要计算的数据或者需要处理不同的数据类型以及大小端等,在这种情况下常见的串口调试助手可能处理起来比较麻烦, 但使用 Bittly 的话, 这些都可以通过指令管理功能被轻松的处理。

在 Bittly 的指令管理功能中,您可以将每次发送给设备的数据看作一条指令。 每条指令由参数和响应两部分组成, 在点击指令执行按钮时, Bittly 会将参数编辑器中的参数数据进行编译处理, 处理完成后再发送给设备, 而设备发送给本机的任何数据都将会作为指令响应内容显示出来。

参数编辑

Bittly 支持多种参数格式,例如文本,HEX, 文件, 结构体, 文本模板, JSON 等, 您可根据实际的需要来进行选择。

例如, 如果需要发送的内容为 hello 纯文本, 那么可以使用文本参数编辑器, 例如:

如果参数内容为二进制数据,那么可以使用 HEX 编辑器, 例如:

对于不同的参数编辑模式支持不同的模板函数, 例如在文本编辑器中, 您可以使用 {``{uuidV4()}} 来自动生成 UUID 字符串, 例如:

或者在使用 HEX 编辑器时, 您可以使用 {``{ uint16LE(200) }} 等方式来转换十进制到十六进制中,例如:

对于每种参数编辑器的函数支持, 可参考文档 https://bittly.cn/doc/directive/index

回到最初的问题,假设我们发送的数据很复杂, 存在需要计算的内容, 那么如何使用 Bittly 来处理呢?

假设我们发送的数据格式如下:

复制代码
<帧头><设备ID><包ID><操作ID><数据长度><数据内容><校验码><帧尾>

其中:

  • 帧头: 1 字节, 固定 AA
  • 设备ID : 1 字节
  • 包ID: 2 字节, 无符号整型
  • 操作ID : 1 字节
  • 数据内容 :结构体, 角度:2个字节无符号, 速度:2个字节无符号
  • 校验码:2字节
  • 帧尾:1字节, 固定 FF

首先,我们需要将参数编辑器选择为结构体,然后开始针对每个属性进行编辑:

则完成编辑后如下:

我们可以通过数据流响应模式查看到我们具体发送的内容

响应配置

和参数编辑一样, 指令响应也同样存在多种查看方式,例如文本,HEX, 结构体, 绘图等。

假设我们的设备会将收到的内容原封不动的再发送回来, 以我们之前编辑的参数为例,我们仍然以结构体查看模式来进行响应解析。

参数结构体是根据属性数据类型以及数据长度等信息将多个属性拼接成二进制数据,响应结构体则是根据属性数据类型以及数据长度信息将二进制解析成属性。

Bittly 的响应结构体存在编辑,解析查看以及列表查看三种模式。

结构体编辑模式用于编辑结构体属性列表,即每个属性的数据类型等信息, 在编辑模式下指令收到响应内容后并不会进行处理, 您可以在编辑模式下自由增删结构体中的每个属性:

解析查看模式则是将收到的二进制数据根据编辑完成的结构体属性信息进行解析并展示。 解析查看模式下无法对结构体属性进行编辑, 只能在编辑模式中操作。

由于解析查看模式仅仅解析最新的数据,所以列表查看模式则是将每次收到的数据进行解析并以列表的形式进行展示。

结束

通过使用 Bittly 的指令管理功能,您可以高效地处理复杂的串口指令调试,无论是发送还是接收数据。借助多种参数格式和灵活的响应配置,您能够根据实际需求进行精准的编辑与解析。这不仅提升了调试效率,也确保了数据的准确性。无论是处理简单的文本,还是复杂的结构体,Bittly 都为您提供了强大的支持,助力您的开发工作。

相关推荐
深圳安锐科技有限公司11 分钟前
模块拼装可灵活定制?大坝边坡岩土内部位移监测用它适配性强吗?
自动化·实时监测·自动化监测·结构健康监测·测斜仪·节段式位移计
吉哥机顶盒刷机27 分钟前
晶晨芯片机顶盒与海思芯片机顶盒刷机区别详解
经验分享·嵌入式硬件·刷机
森利威尔电子-30 分钟前
SL4011:2.7V-12V输入,12.8V输出高效率升压型DC-DC转换器
单片机·嵌入式硬件·集成电路·芯片·电源芯片
想搞嵌入式的小白34 分钟前
LDO和DC-DC的异同
单片机·嵌入式硬件
EVERSPIN1 小时前
RGB显示驱动MCU单片机—CH643键盘应用方案
单片机·嵌入式硬件·mcu·计算机外设·mcu单片机
武汉禹力自动化科技2 小时前
ABB气动执行器DP020SR / DP050SR / DP110SR区别详解 | 禹力自动化科技有限公司
运维·科技·自动化
电气_空空2 小时前
基于 Labview/Matlab 的人脸识别系统设计与实现
单片机·嵌入式硬件·毕业设计·labview
2601_949146533 小时前
电商通知短信接口开发方案:如何通过API实现订单、发货等自动化短信提醒逻辑
运维·自动化·dubbo
武汉禹力自动化科技3 小时前
ABB气动执行器DP系列深度解析与应用指南
自动化·abb气动执行器
云飞云共享云桌面3 小时前
SolidWorks云电脑如何多人共享访问?
运维·服务器·人工智能·3d·自动化·云计算·电脑