主题中讨论的其他器件:SEGGER、 DP83822I、 DP83822EVM
您好!
我有两块板、一个基于 TM4C129EN 的定制板和一个 STM32F4开发套件与一根长度为90m 的制作不良的以太网电缆连接在一起。 在两块板上的接收达到完全停止前、这两个板可以进行短时间(有时几秒钟几小时)的通信。 我为板载 MAC 和 PHY 启用了以下选项:
//初始化以太网 MAC 和与总线相关的 DMA 参数 ROM_EMACPHYConfigSet (EMAC0_BASE、EMAC_PHY_TYPE_INTERNAL | EMAC_PHY_INT_RUST_MDIX | EMAC_PHY_AN_10B_T_HALF_DUPLEX | EMAC_PHY_INT_LD_ON_RX_ERR_COUNT | EMAC_PHY_INT_LD_ON_MTL3_ERR_COUNT | EMAC_PHY_INT_LD_ON_LOW_SNR | EMAC_PHY_INT_LD_ON_SIGNAL_ENERGY); ROM_EMACInit (EMAC0_BASE、_ClockFrequency、 EMAC_BCONFIG_Mixed_BURST | EMAC_BCONFIG_TX_PRIORITY、 32、 32、0); ROM_EMACConfigSet (EMAC0_BASE、( EMAC_CONFIG_CHECKSUM_OFFLOAD | EMAC_CONFIG_7BYTE_PREAMBLE | EMAC_CONFIG_IF_GAP_96BITS | EMAC_CONFIG_USE_MACADDR0 | EMAC_CONFIG_SA_FTER_descriptor | EMAC_CONFIG_BO_LIMIT_16 | EMAC_CONFIG_Jabber_disable)、 (EMAC_MODE_RX_STORE_Forward | EMAC_MODE_TX_STORE_Forward | EMAC_MODE_TX_THRESHOLD_64_Bytes | EMAC_MODE_RX_THRESHOLD_64_Bytes | EMAC_MODE_RX_ERROR_FRA框)、0);
在故障发生后、我可以观察到两个电路板都在发送以太网帧、但其他接收器上都没有显示。 在 STM32开发套件上执行复位只会产生一个链路、然后在我的定制电路板上产生一个链路、以及两个尝试发送 ARP 请求的单元。 但他们都没有得到。 当我在自定义(TM4C)板上发出软 PHY 复位时、通信再次变为活动状态、同时再次进行复用和复用帧。
通过切换寄存器视图中的 EMAC_PC_DIGRESTSTART 位来发出 PHY 复位。
在诊断此问题的进一步步骤中、我们将非常感谢您提供任何帮助。
谢谢