AVTP 项目中的以太网初始化问题我正在使用恩智浦提供的 AVB 协议栈实施 AVTP

我正在具体实施 s32k358_baremetal_acf_example 项目,在闪存精灵后遇到了一些问题。我在构建项目时没有遇到任何问题(确保 RTD 版本是 4.0,而不是 5.0)。我的以太网模块在闪烁后没有完成初始化。
问题:
- 程序闪烁后立即出现硬件故障,原因是" MemManage:处理器试图从一个不允许执行的位置获取指令。硬故障:故障已升级为硬故障。"在调试窗口中单击RESET按钮后,它会进入main.c

- 在 EMACLLD_ClockInit_HwSwitch() 函数中,时钟切换没有发生,通过观察寄存器,我发现时钟切换请求失败,FIRC 是时钟源,而不是 EMAC_EXTERNAL_TX_RMII。"010b - 由于目标时钟不活动且当前时钟为 FIRC,请求失败后切换。"

- 经过进一步挖掘,我决定将其与 LWIP 裸金属项目进行比较。上述寄存器在 device_init() 中的 Clock_Ip_Init () 之后显示成功,而 AVTP 项目的情况并非如此。 我使用的是同一个板和 PHY,但我不知道为什么在 AVTP 项目中它显示目标时钟处于非活动状态。
- 即使我注释掉 EMACLLD_ClockInit_HwSwitch() 函数,并在外设工具中进行适当的时钟配置,它也会再次卡在 DMA 初始位置。

- 请帮我解决这个拦截器。
使用的硬件:S32K358 评估板
PHY:ADTJA1101-RMII
Re: Ethernet initialisation issues in AVTP project你好@ssattva1、
很抱歉延迟回复--我在度假。
很高兴听到 LWIP 的例子对你有用。
关于REFCLK的电压下降,这似乎是硬件冲突。请确认 LWIP 示例和您的 AVTP 项目之间的 RMII 引脚配置是否匹配。具体来说,emac_mii_rmii_tx_clk 引脚应配置为输入。
换句话说,既然一个示例可以正常运行,我建议将其配置与另一个项目进行比较,以找出任何差异。
顺祝商祺!
帕维尔
Re: Ethernet initialisation issues in AVTP project你好@PavelL,Lwip 示例在不对 RMII 的硬件进行这些更改的情况下也能工作。
我最近发现了这个东西,当我探测 ADTJA1101 中的电阻 65(即 REFCLK 沿线的电阻器)时,LWIP 项目的电压等级约为 2V,但是一旦我运行 AVTP 项目,它就会降至 1V。您能帮帮我吗?
Re: Ethernet initialisation issues in AVTP project你好@ssattva1、
我已经成功地在 S32K3X8EVB-Q289 上使用 TJA1103-SDBR 运行了 RGMII。
但是,RMII 需要对板进行一些硬件修改。详情请参阅 S32K3X8EVB-Q289硬件用户手册 第 13.2 节 (S32K3X8EVB-Q289HWUM.pdf)。
顺祝商祺!
帕维尔