我正在尝试使用 PHY 发送广播以太网数据包。我以 Gmac_Ip_InternalLoopback_S32K358 为例并对其进行了修改。
目标 mac 地址设置为广播地址 (ff:ff:ff:ff:ff:ff)。
以太网类型设置为0800。DMA 自己的位在传输之前设置,并在一段时间后被清除。但我不知道数据包是否传输出去了。
应用程序 -> DMA -> MTL(FIFO)-> MAC -> PHY。
以下三个寄存器在传输时会增加。
1. 发送数据包计数良好错误
2. Tx_Broadcast_Packets_Good
3. Tx_Broadcast_Packets_Good_Bad
我不知道这些寄存器是否仅当MAC将数据包从FIFO传输到PHY时才会递增。
1.如何确认数据包已成功传输到PHY?
2.我应该检查哪些寄存器来确认数据包传输?
3.另外,如何确认MTL推送数据并且MAC接受数据并开始向RMII传输?如何知道状态?
硬件详细信息:
S32K3X8EVB-Q289评估板
TJA1103SDB SABRE开发板(170-47757 REV C)
Software details:
SW32K3_S32DS_3.5.8_D2311.zip
SW32K3_S32M27x_RTD_R21-11_4.0.0_D2311_DS_updatesite.zip
SW32K3_FreeRTOS_10.6.0_CD_4.0.0_DS_updatesite_D2312.zip
SW32K3_TCPIP_STACK_1_0_4_D2401_DS_updatesite.zip
附上项目以供参考。该项目将实现基本的以太网(GMAC 和 PHY)功能(发送广播数据包)。
大家好,
修改时钟和其他引脚配置后,该问题已得到解决。请参阅以下主题以了解更多详细信息。
https://community.nxp.com/t5/S32K/S32K358-GMAC-sends-abnormal-data/mp/2083039#M47907
谢谢,
萨蒂什。
我已禁用 GMAC 驱动程序中的环回。