汽车LIN总线流控制计数器寄存器位详解

需积分: 45 248 下载量 158 浏览量 更新于2024-08-06 收藏 25.58MB PDF 举报
本文档主要讨论了汽车LIN总线诊断中的流控制计数器寄存器位描述以及节点配置规范。流控制计数器寄存器在LPC1700微控制器中起着关键作用,它位于地址0x5000 0170,用于监控和管理数据传输过程中的流控制。该寄存器的位功能包括: 1. **Received byte count** (15:0):记录接收到的帧信息长度,初始值为0x0。 2. **Packet previously ignored**:标志是否漏掉了(drop)一个包,复位值为0。 3. **RXDV event previously seen**:记录上一次接收到的帧长度不足的情况,表示可能不完整的包,初始值为0。 4. **Carrier event previously seen**:标记上一次接收后出现的载波事件,初始值为0。 5. **Receive code violation**:信号接收到的PHY数据不符合接收规则,初始值为0。 6. **CRC error**:校验和错误,即接收到的包中的CRC与内部计算的CRC不符,初始值为0。 7. **Length check error**:帧长度与实际数据不匹配,且长度区域不表示数据类型,初始值为0。 8. **Length out of range**:帧类型/长度值超过1518字节的限制,通常在处理IP或ARP这样的非标准帧时触发,但并非错误,仅作为接收状态的指示,初始值为0。 9. **Receive OK**:接收成功,有有效的CRC且无符号错误,初始值为0。 10. **Multicast and Broadcast**:标志包的目标地址是否为多播或广播地址,初始值均为0。 11. **Dribble Nibble**:接收到的数据形成不完整nibble的情况,初始值为0。 12. **Control frame**:判断当前帧是否为控制帧,初始值为0。 13. **PAUSE**:若为带有PAUSE操作码的控制帧,则置1,初始值为0。 14. **Unsupported Opcode**:检测到未知操作码的控制帧,初始值为0。 15. **VLAN**:帧类型/长度区域包含VLAN协议标识符0x8100,初始值为0。 16. **MirrorCounter**:全双工模式下的暂停控制帧重发计数器,初始值为0x0。 17. **PauseTimer**:全双工模式下的暂停定时器或半双工模式下的背压周期数,初始值为0x0。 这些寄存器位在LIN总线通信中用于检测错误、监控数据流量,并根据需要执行相应的控制操作,如流控制、错误处理和网络配置。了解这些寄存器的细节对于正确理解和诊断LIN总线系统的性能至关重要。同时,文档还提到了LPC1700的其他部分,如章节结构和应用概述,这些内容为使用该芯片的开发者提供了全面的技术支持。