ZHDU116G January 2018 – June 2024 CC1312PSIP , CC1312R , CC1352P , CC1352R , CC2642R , CC2642R-Q1 , CC2652P , CC2652PSIP , CC2652R , CC2652RB , CC2652RSIP , CC2662R-Q1
正在接收的数据包存储在接收缓冲器中。首先,如果 config.lenSz 在 RX 条目中配置了长度字节或字,则会存储一个长度字节或词,如节 26.3.2.7.2 中所述。这根据通过空中接收的长度和附加信息的配置而计算。
在可选长度字段之后,接收到的标头和有效载荷会以无线方式存储。如果 rxConfig.bIncludeLenByte 为 1,则会存储完整的 16 位标头(包括接收到的长度字段),尽管长度字段是冗余信息(如果存在长度字节或字)。如果 rxConfig.bIncludeLenByte 为 0,则仅存储标头的第一个字节,以便第二个字节(仅包含冗余长度字段)以及一些 RFU 位被丢弃(取决于蓝牙版本)。
如果 rxConfig.bIncludeCrc 为 1,则接收到的 CRC 值将存储在 RX 缓冲器中。如果 rxConfig.bAppendRssi 为 1,则附加一个指示接收到的 RSSI 值的有符号字节。如果 rxConfig.bAppendStatus 为 1,则会附加一个状态字。对于传统的低功耗蓝牙命令,这是表 26-120 中定义的 1 字节字段,而对于低功耗蓝牙 5 命令,这是表 26-121 中定义的 2 字节字段。如果 rxConfig.bAppendTimeStamp 为 1,则附加一个指示数据包开始的时间戳。此时间戳对应于 ratmr_t 数据类型,该数据类型是小端字节序格式的 32 位值。不应进行填充以确保多字节字段(时间戳及低功耗蓝牙 5 状态)进行特定对齐。因此,必须按字节写入和读取多字节字段。
图 26-8 显示了 RX 队列中条目元素的格式。
图 26-8 接收缓冲器条目元素