TI中文支持网
TI专业的中文技术问题搜集分享网站

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

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

Shine:

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

user4730650:

回复 Shine:

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

赞(0)
未经允许不得转载:TI中文支持网 » 使用C6748的EMAC进行网络数据包接收,但是丢包特别严重。每秒发的4000个包,dsp只收到了1000个。
分享到: 更多 (0)