"LPC1700系列微控制器的汽车LIN总线诊断及节点配置规范中的接收滤波器控制寄存器位描述"
在LPC1700系列微控制器中,汽车LIN总线的诊断和节点配置涉及到一些关键的寄存器,其中包括流控制状态寄存器和接收过滤器控制寄存器。这些寄存器对于有效地管理和过滤网络通信至关重要。
首先,流控制状态寄存器(Flow Control Status Register)的MirrorCounterCurrent位(15:0)用于在全双工模式下显示数据通道的镜像计数器当前值。这个计数器的最大值取决于流控制计数器寄存器中的MirrorCounter字段设定的值。在半双工模式下,该字段的值则对应于流控制计数器寄存器的PauseTimer字段的值。复位后,这些未使用的位(31:16)均设置为0x0。
接下来,接收过滤器控制寄存器(RxFilterCtrl,地址0x5000 0200)是配置网络接收策略的关键。表10.42详细描述了该寄存器的位定义:
1. AcceptUnicastEn(位0):当该位被置为1时,微控制器会接收所有单播帧。
2. AcceptBroadcastEn(位1):如果该位设为1,广播帧会被接收。
3. AcceptMulticastEn(位2):当该位为1时,多播帧会被接收。
4. AcceptUnicastHashEn(位3):如果设置为1,将接受通过不完全哈希过滤器筛选的单播帧。
5. AcceptMulticastHashEn(位4):同理,当该位为1,接收通过不完全哈希过滤器筛选的多播帧。
6. AcceptPerfectEn(位5):置1表示接收目标地址与站地址完全匹配的帧。
7. 位6至11是保留位,不应被写入1,读取结果是未定义的。
8. MagicPacketEnWoL(位12):设为1时,魔法包过滤器匹配会触发唤醒中断。
9. RxFilterEnWoL(位13):当该位为1,完全地址匹配或不完全哈希过滤器匹配会产生唤醒中断。
10. 位14至31未使用,复位后为0x0。
此外,还有一个接收过滤器WoL状态寄存器(RxFilterWoLStatus,地址0x5000 0204),这是一个只读寄存器,用于查看唤醒事件的状态。该寄存器的位定义在表10.43中给出,但具体内容未提供。
这些寄存器的配置决定了LPC1700如何处理接收到的网络帧,允许用户根据需求定制接收策略,比如是否接收特定类型的帧以及是否启用唤醒功能。在汽车LIN总线诊断和节点配置中,精确地控制这些参数可以优化网络性能,减少不必要的处理开销,并确保系统在必要时能够从低功耗模式下被唤醒。