stm32arm+KSZ8041NL1实现网口功能,同一套程序移植到另一块板卡就ping不通了,两套板卡arm和phy芯片部分连接是一样的。单步调试发现两个问题: 1)经常在初始化的时候卡在ETH_DMABMR.SR软件复位后不自动恢复,导致超时。往往重新上下电几次就好了,非常不稳定; 2)不触发dma接收中断。示波器量过ETH_RXD管脚上面都有波形,dma接收和中断设置都正常设置和打开,ETH_MAC和DMA寄存器也没发现问题,但就是不进中断。可以正常发送arp数据出来,MAC的loop模式是可以触发中断的; 求问各位有没有遇到过类似问题 |
STM32G0B1adc+dma采样数据错位
STM32H7打开DCache后,串口1DMA接受数据位空
STM32 SPI从机用DMA方式实现全双工,数据传输过程中出错。
与HAL_ADC_Start_DMA相关的一个十分怪异的问题
双重ADC的DMA请求
训练好的ai模型导入cubemx不成功咋办,试了好几个模型压缩了也不行,ram占用过大,有无解决方案?
PWM+DMA分多次发送缺点明显,会造成脉冲不连续,有解决的办法吗。
STM32H723使用DMA方式实现定时器输入捕获只能执行一次?
DMA发送函数只能被调用一次
STM32L431进入STOP1模式后ADC产生多余功耗
那个复位没法正常完成,不妨先确认下电源或硬件连接方面有没有问题,主要是PHY跟STM32的连接;
再就是时钟方面,看看PHY芯片或STM32的时钟源是否稳定,频率是否正确。
你现在没法触发dma接收中断,不排除还有其它配置问题。
[md]感谢回复。电源检查过是正常的,arm的时钟外接25M晶振,频率正常,幅值略低但和正常的板卡对比了一样。phy自动协商后是10M,TXD和RXD的时钟都是2.5M,也是正常的