【问题标题】:Decode HEX string解码 HEX 字符串
【发布时间】:2016-09-02 21:23:30
【问题描述】:

我有这个字符串被一个串口 (HEX) 接收到:

02 30 31 30 30 3f 50 35 32 0d 0a
02 30 31 30 31 3f 55 35 38 0d 0a
02 30 31 30 32 3f 48 34 43 0d 0a
02 30 31 30 33 3f 45 34 41 0d 0a
02 30 31 30 34 3f 50 35 36 0d 0a
02 30 31 30 35 3f 55 35 43 0d 0a
02 30 31 30 36 3f 48 35 30 0d 0a
02 30 31 30 37 3f 45 34 45 0d 0a
02 30 31 30 38 3f 50 35 41 0d 0a
02 30 31 30 39 3f 55 36 30 0d 0a
02 30 31 31 30 3f 48 34 42 0d 0a
02 30 31 31 31 3f 45 34 39 0d 0a
02 30 31 31 32 3f 50 35 35 0d 0a
02 30 31 31 33 3f 55 35 42 0d 0a
02 30 31 31 34 3f 48 34 46 0d 0a
02 30 31 31 35 3f 45 34 44 0d 0a




1° hex: STX
2° & 3°: fixed
4° & 5°: from 30 30 to 39 39
6°: fixed
7°: same routine 55 / 48 / 45 / 50 
8° & 9°: my question
10°: CR
11°: LF

有人可以帮助我了解 8 和 9 十六进制背后的逻辑吗?

非常感谢 安德烈亚

【问题讨论】:

    标签: hex parity


    【解决方案1】:

    将 1 到 7 的所有字节相加。然后取结果的最后两位,以十六进制表示(使用大写字母)。获取每个数字的 ascii 值,它们是校验和的两个字节。例如,将第一行的所有字节相加得到 0x152。 5 和 2 的 ascii 码分别是 0x35 和 0x32。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-16
      • 2016-06-11
      • 2015-08-12
      • 1970-01-01
      • 1970-01-01
      • 2013-04-01
      • 2016-08-28
      • 2018-08-05
      相关资源
      最近更新 更多