数据包封装与行编码
HULC协议使用字节0x1A作为数据包的起始标记（SOP）。为了避免误将正常数据字节0x1A解释为SOP标记，每次遇到数据字节0x1A时，会在数据流中对其进行转义（即“转义”操作），
即将0x1A替换为两个0x1A字节。接收端需要在接收时识别每个后续不是0x1A的0x1A字节作为SOP标记，并将每次出现的连续0x1A字节还原为一个0x1A的数据字节（即“解除转义”操作）。
以下是一个包含SOP标记和数据字节0x1A的数据包示例：
转义前: 1A 32 27 1A E8 57 F0 1A 6C
传输中: 1A 32 27 1A 1A E8 57 F0 1A 1A 6C
解除转义后: 1A 32 27 1A E8 57 F0 1A 6C




所有类型的数据消息（0x31、0x32、0x33）具有以下结构：
0x1A TYPE 时间戳 RSSI数据   Mode-S或Mode-A/C
 1    1     6     1          2/7/14
各字段说明：
    TYPE（类型）：8位，表示数据类型。0x31代表Mode-A/C，0x32代表Mode-S短报文，0x33代表Mode-S扩展报文。
    时间戳（Timestamp）：48位，包含两个部分：
        高18位：自当天00:00:00 UTC以来的秒数。
        低30位：当前秒的纳秒部分。
    RSSI（信号强度指示）：8位，表示信号强度的对数值（未校准）。
    数据（Data）：N * 8位的原始数据，具体长度取决于数据类型：
        对于Type 0x31，数据长度为2字节；
        对于Type 0x32，数据长度为7字节；
        对于Type 0x33，数据长度为14字节。
    备注：数据采用MSB（最高位优先）格式。



时间戳格式
时间戳有两种格式，分别是绝对时间戳和相对时间戳，取决于是否连接了GPS接收器。可以通过检查HULC状态消息中的状态标志字段的第15位（Gps Detected）来确定使用的是哪种格式。两种时间戳格式与Beast二进制协议中的相应时间戳格式兼容。
1.相对时间戳（无GPS）：
如果没有连接GPS接收器，则时间戳是一个48位的无符号整数，表示12 MHz的时钟周期数。该时间戳大约每271天会回绕一次。
2.绝对时间戳（有GPS）：
如果连接了适当的GPS接收器，则48位的时间戳字段分为两部分：
高18位：表示自当天00:00:00 UTC以来的秒数。
低30位：表示当前秒的纳秒部分。纳秒数保证小于1秒。

示例： 时间戳0x3746554be940代表的时间为：
56601秒 + 357296448纳秒 = UTC时间：15:43:21.357296448