This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

使用C6748的EMAC进行网络数据包接收,但是丢包特别严重。每秒发的4000个包,dsp只收到了1000个。

如题,使用的DSPC6748+LAN8710A.我按照数据手册配置的EMAC和MDIO,使用单个描述符。网口接收数据包时,发送端的速率4k个包/s(每个包大小200字节左右),DSP接收时,每秒只收到了1000多个,丢包特别严重。是我的时钟或者EMAC中断配置有问题吗??

  • 丢包的话,建议从硬件上排查,看一下PHY外围电路,晶振,布线,是否有干扰信号导致信号质量不好。


  • 首先感谢您的解答和建议。通过程序计时发现问题出在:接收中断处理函数中的串口输出程序占用大量的时间,删除串口输出程序后未发现丢包。但是我不懂的是,在115200波特率下,发送4个字节,理论上只需要40us左右,但是实际测试发现,串口发送占用时间超过1ms,这是为什么?(使用的是uartStdio.h库中的串口输出函数)