TMS320F28384S: F28384S + LAN8720A RMII 模式,ping 不通,接收中断不触发

Part Number: TMS320F28384S

你好!我遇到以下问题,请协助解决!

硬件连接(MCU ↔ LAN8720A,RMII 模式)

  • GPIO42 ↔ MDC,GPIO43 ↔ MDIO

  • GPIO73 ↔ 50MHz REF_CLK(PHY 提供,已验证有稳定 50MHz 方波)

  • GPIO75 ↔ TXD0,GPIO74 ↔ TXD1,GPIO69 ↔ TXEN

  • GPIO71 ↔ RXD0,GPIO72 ↔ RXD1

  • GPIO70 ↔ CRS_DV,GPIO68 ↔ nRST

软件配置

  • 使用官方 enet_lwip 示例,已改为 RMII 模式(PHY_INTF_SEL = 4)

  • CLK_SRC_SEL = 0(外部时钟源)

  • C28x 侧已配置好引脚复用,CM4 侧运行 FreeRTOS + lwIP,采用静态 IP

已验证/排查过的事项

  • White check mark 示波器测到 CRS_DV 高电平脉冲 + RXD1 数据跳变

  • White check mark RMII 时钟源寄存器确认:0x400C2004 = 0x00000304(CLK_SRC_SEL = 0,PHY_INTF_SEL = 4)

  • White check mark LED 闪烁正常(双核均正常运行)

  • X Ethernet_receiveISRCustom 中断函数始终未触发

已尝试的解决方案

  • 启用混杂模式(MAC_Packet_Filter PR 位 = 1),无效  

  • 设置 FEP 位(MTL_RxQ0_Operation_Mode bit 4 = 1),无效

     

    由于官方没有RMII的例程可以参考,故在此请教!附件是工程代码。

cm_common_config_c28x.rar

enet_lwip_freertos.rar