LPC23xx以太网控制器接收过滤器详解

需积分: 0 84 下载量 91 浏览量 更新于2024-08-10 收藏 5.26MB PDF 举报
"本文档是LPC23xx系列单片机以太网控制器的用户手册,主要介绍了接收过滤器寄存器的定义以及相关的流控制计数器和状态寄存器。" 在LPC23xx单片机中,以太网控制器包含了多个关键寄存器,用于管理网络接口的数据接收和流量控制。接收过滤器寄存器是其中的重要部分,它决定了哪些接收的数据帧会被处理。以下是对这些寄存器的详细说明: 1. **接收过滤器寄存器** (RxFilterCtrl-0xFFE0 0200): 这个寄存器用于控制接收过滤规则,决定哪些帧将被接收。例如,位24表示多播地址,如果设置为1,单片机会接收目标地址为多播地址的帧。位25表示广播地址,设置为1则接收广播帧。位30用于识别VLAN帧,当帧类型/长度区域包含VLAN协议标识符0x8100时,此位被设置。 2. **接收状态寄存器** (Receive Status Register): 这个寄存器提供了接收帧的一些状态信息,如Length out of range表示帧长度超过1518字节,Receive OK表示帧有有效的CRC且无符号错误。Dribble Nibble位则指示在帧结束后续接了额外的1到7位数据。 3. **流控制计数器寄存器** (FlowControlCounter-0xFFE0 0170): 在全双工模式下,这个寄存器用于设定在发送PAUSE帧前的周期数,即MirrorCounter字段。而在半双工模式下,它用于设定背压周期数,即PauseTimer字段。 4. **流控制状态寄存器** (FlowControlStatus-0xFFE0 0174): 这是一个只读寄存器,提供当前流控制的状态信息。在全双工模式下,MirrorCounterCurrent字段显示数据通道的镜像计数器当前值,反映流控制计数器的 MirrorCounter 字段的值。 这些寄存器的配置对于正确地接收和处理以太网数据至关重要。例如,通过设置接收过滤器寄存器,可以确保只接收特定类型的帧,避免不必要的网络流量。同时,流控制寄存器允许设备动态管理网络带宽,防止拥塞,尤其是在全双工模式下使用PAUSE帧进行流量控制。 LPC23xx系列单片机的以太网控制器设计考虑到了实时性和效率,通过这些寄存器,开发者能够精细地调整网络接口的行为,以适应各种网络应用场景。了解和正确使用这些寄存器是实现高效、可靠的以太网通信的关键。