文件名称:接收有效/无效的状态机-史上最直白的ica教程
文件大小:5.26MB
文件格式:PDF
更新时间:2024-06-23 16:19:28
LPC23XX 中文资料
广州周立功单片机发展有限公司 第11章 以太网控制器 LPC23xx 用户手册 ©2008 Guangzhou ZLGMCU Development CO., LTD 165 11.16.13 接收和发送的使能与禁能 接收操作的使能与禁能 复位之后,以太网模块的接收功能是禁止的。设备驱动程序将命令寄存器中的 RxEnable 位以及 MAC1 配置寄存器中的“RECEIVE ENABLE”位置位来使能接收功能(按上述顺序 执行置位)。 接收通道的状态可通过设备驱动程序读取状态寄存器中的 RxStatus 位来监控。图 11.9 阐述了用来产生 RxStatus 位的状态机。 ACTIVE RxStatus = 1 INACTIVE RxStatus = 0 RxEnable = 1 RxEnable = 0并且没有忙于接收 或 RxProduceIndex = RxConsumeIndex - 1 复位 xxxxxxxxxxxxxxxxxx 图 11.9 接收有效/无效的状态机 复位之后,状态机处于 INACTIVE 状态。一旦命令寄存器中的 RxEnable 位置位,状态 机就立即转换到 ACTIVE 状态。RxEnable 位清零时,状态机立即返回 INACTIVE 状态。如 果接收通道禁能时正忙于接收一个信息包,接收通道将完成接收操作,在返回 INACTIVE 状态之前将接收包连同该包的状态一起存放到存储器中。并且,如果接收描述符数组满,状 态机也将返回 INACTIVE 状态。 对于如图 11.9 所示的状态机来说,软复位与硬复位一样有效,即一次软复位之后,接 收通道将进入 INACTIVE 状态直到重新使能。 发送操作的使能与禁能 复位之后,以太网模块的发送操作是禁止的。设备驱动程序将命令寄存器中的 TxEnable 位置位可使能发送通道。 发送通道的状态可通过设备驱动程序读取 Status 寄存器中的 TxStatus 位来监控。图 11.10 阐述了用来产生 TxStatus 位的状态机。