汽车LIN总线诊断规范:接收状态信息字解析

需积分: 45 248 下载量 137 浏览量 更新于2024-08-06 收藏 25.58MB PDF 举报
"LPC1700 中文用户手册 - 汽车LIN总线诊断与节点配置规范" 本文档主要介绍了汽车LIN总线诊断及节点配置规范中的接收状态信息字,该信息字用于描述LIN总线通信过程中的帧接收情况。其中包含31个位,分别表示不同的接收状态。 1. RxSize (0-10位): 传输到片段缓冲区的实际数据字节数,减1编码,表示DAM经理针对描述符实际写入的帧或片段的字节数。它可能与描述符控制区域中的Size值不同。 2. 未使用位 (11-17位): 这些位未被当前规范定义,可能在其他应用场景中有特定用途。 3. ControlFrame (18位): 表示帧用于流控制,可能是暂停帧或包含不支持操作码的帧。 4. VLAN (19位): 标志帧是否属于VLAN(虚拟局域网)。 5. FailFilter (20位): 若帧的接收过滤失败,表明帧无法正常传递至内存。如果PassRxFilter命令寄存器位置位,整个帧仍会传递到内存。 6. Multicast (21位): 当接收到多播帧时,该位置位。 7. Broadcast (22位): 接收到广播帧时,该位被置位。 8. CRCError (23位): 帧包含CRC(循环冗余校验)错误。 9. SymbolError (24位): PHY报告在接收过程中检测到位错误。 10. LengthError (25位): 帧长度区域指定的有效长度与实际数据长度不符。 11. RangeError[1] (26位): 接收到的包长度超过最大限制。 12. AlignmentError (27位): 对齐错误,与IEEE std.802.3/条款4.3.2一致,发生在检测到dribble位和CRC错误时。 13. Overrun (28位): 接收溢出,适配器无法处理数据流。 14. NoDescriptor (29位): 没有新的接收描述符可用,且帧信息对当前接收描述符的缓冲区来说过长。 15. LastFlag (30位): 该位置位表示这是帧中的最后一个片段,若帧仅由一个片段组成,此位也置位。 16. Error (31位): 表示接收帧过程中发生错误,是AlignmentError、RangeError、LengthError、SymbolError、CRCError和Overrun的逻辑“或”结果。 对于多片段帧,除了最后一个片段,其他片段的错误位(如AlignmentError等)均为0,FailFilter、Multicast、Broadcast、VLAN、ControlFrame位的值未定义。最后一个片段的状态是直接从MAC复制过来的,所有片段都有有效的LastFrag、RxSize、Error、Overrun和NoDescriptor位。 文档还提到了发送描述符和状态的规划,但具体内容未在摘要中给出。LPC1700系列微控制器是广东兆讯微控制器发展有限公司的产品,适用于各种应用,包括汽车电子系统。 [1] EMAC(以太网媒体访问控制器)不会区分帧类型和长度,可能会报告“长度超出范围”错误,但此错误并不总是代表实际问题,而是芯片对接收帧状态的一种说明。