ZHCSQH8A September 2025 – October 2025 TCAN5102-Q1
ADVANCE INFORMATION
接收 FIFO 为只读。
RX 缓冲区中每个帧的大小由消息的数据长度决定。缓冲区中 RX 帧的总长度为以下各项之和
当从 FIFO 元素中读取了所有数据字节后,对 RX FIFO 的读取被视为完成且该 FIFO 元素被释放。当读取数据时,若读取的字节数超过剩余可读取字节数,超出部分的无效字节将返回 0x00。
从 RX FIFO 中对一帧数据进行部分读取后,下一次对 SPI FIFO 的读取会自动延续该帧的剩余部分,此时 CONT 位会被置位以标识这种延续状态,同时 NUM_BYTES_REMAINING 会显示该消息中尚待读取的数据字节数。
从空的 RX 缓冲区读取时,通道 0 的 NUM_BYTES_REMAINING 返回 0。帧的读取顺序始终与接收顺序一致。
通过向 SPI 清除 RX FIFO 位 (SPI_FIFO_CTRL[1]) 写入 1,可以清空 RX 缓冲区(丢弃所有帧)。
| 字节 | 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|---|
| 0 | 7 | CONT | R | 0 | 用于指示是消息的第一部分还是延续部分的标志(用于读取拆分为多个 CAN 读取的消息) 0 = 新消息的第一部分 1 = 前一次消息读取的延续 |
| 6:3 | RSVD | R | 0 | 保留 | |
| 2:0 | CHAN | R | 0x0 | 用于该消息的 SPI 通道 有效值 0-3 0 = SPI 通道 0 1 = SPI 通道 1 2 = SPI 通道 2 3 = SPI 通道 3 4 = SPI 通道 4 5 = SPI 通道 5 6 = SPI 通道 6 7 = SPI 通道 7 注: 一个 SPI 通道对应一个特定的 GPIO,且要求该 GPIO 被分配为特殊功能 | |
| 1 | 7:0 | NUM_BYTES_REMAINING | R | 0x0 | 此消息中剩余待读取的数据字节数(包括当前帧中传输的数据字节)。这不包括报头字节。这使处理器知道当前 CAN 帧中有多少字节是有效的,以及是否需要再次读取以从 FIFO 中获取该消息的更多数据。 |