Swift开发BLE时数据帧前导字节求和校验值0x93计算逻辑问询
BLE数据帧校验位计算规则
你给出的示例数据帧前4个待校验字节为 [0x6E, 0x01, 0x00, 0x24],该校验位遵循8位累加和校验规则,计算逻辑如下:
- 第一步:对前4个前导字节做无符号加法求和
计算过程:0x6E + 0x01 + 0x00 + 0x24 = 0x93 - 第二步:取求和结果的低8位作为校验位,计算结果和你给出的第5字节校验值
0x93完全匹配
若前导字节累加和超过8位最大值(0xFF/十进制255),直接丢弃高位溢出部分,仅保留最后8位数值作为校验位即可,是嵌入式蓝牙硬件开发中非常常用的轻量校验方式。
内容的提问来源于stack exchange,提问作者CodeCracker
相关产品推荐
相关产品推荐

