这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 物联网技术 » 振弦采集模块AABB通讯协议

共8条 1/1 1 跳转至

振弦采集模块AABB通讯协议

工程师
2022-11-16 11:02:04     打赏

振弦采集模块AABB 通讯协议

501-11.jpg

AABB 通讯协议是一种非标准自定义协议, 相较于 MODBUS 通讯协议,结构更简单,指令生成方法更容易,便于进行快速测试。 AABB 通讯协议支持单寄存器读写两种指令。

( 1) 读取单个寄存器

AABB通讯协议指令数据帧结构.jpg

指令头: 固定为 16 进制 AABB

地址码: VMXXX 模块的地址( 1~255, 其中地址 255 为通用地址,详见后续“通用模块地址” 说明)

寄存器地址: 要访问的寄存器地址( 0~63), 寄存器地址字节最高位是读写标志位,为 0 时表示

读寄存器,为 1 时表示写寄存器。

和校验: 之前所有数据之和, 0xAA+0xBB+地址码+寄存器地址, 校验和超过 255 时,仅使用低字节。 如下例中,校验和=0xAA+0xBB+0x01+0x08=0x016E,则只使用 0x6E 作为最终和校验码。

例:读取地址为 0x01 的模块寄存器值,寄存器地址为 8

主机发送指令: 0xAA 0xBB 0x01 0x08 0x6E

从机返回应答: 0xAA 0xBB 0x01 0x08 0x00 0x60 0xCE


( 2) 修改单个寄存器

AABB通讯协议指令数据帧结构2.jpg

例: 修改地址为 0x01 的模块寄存器值,寄存器地址为 8,修改值为 100

主机发送指令: 0xAA 0xBB 0x01 0x88 0x00 0x64 0x52

从机返回应答: 0xAA 0xBB 0x01 0x08 0x00 0x64 0xD2



( 3) 通用模块地址

AABB 通讯协议支持模块通用地址, 无论模块的当前地址为何值,使用 0xFF 作为地址对模块发送读写指令,均可得到模块正确应答。

例:使用通用地址,读取任一模块的寄存器 8

主机发送指令: 0xAA 0xBB 0xFF 0x08 0x6C

从机返回应答: 0xAA 0xBB 0x01 0x08 0x00 0xC8 0x36

注: 当总线上连接有多个模块时(通常为 RS485 总线), 使用通用地址时总线上所有模块均会响应指令,导致指令无法正常使用。

注: 严禁在连接有多个 VM 模块的总线中使用通用地址修改模块地址。

( 4)特殊模块地址

模块地址保存于寄存器 ADDR.[7:0], 取值范围为 1~255,这些地址中, 255 在 AABB 协议中作为通用地址使用, 地址 128( 0x80) 用于特殊用途, 故此对模块地址进行修改时可使用的地址有: 1~127、 129~254, 共 253 个。

AABB通讯协议指令数据帧结构3.jpg






关键词: 振弦采集模块     仪器开发     物联网     应力应变     信息化         

专家
2022-11-16 12:47:16     打赏
2楼

这个芯片是用来测量什么参数的?应用于什么场景?


专家
2022-11-16 13:20:19     打赏
3楼

感谢分享


专家
2022-11-16 13:31:36     打赏
4楼

主要用于485数据采集?



高工
2022-11-16 16:47:49     打赏
5楼

谢谢分享


专家
2022-11-16 17:03:36     打赏
6楼

谢谢分享


专家
2022-11-16 17:05:58     打赏
7楼

谢谢分享


专家
2022-11-16 17:10:05     打赏
8楼

谢谢分享


共8条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]