CubeMX有个很麻烦的问题,就是在配置的时候按以前的方案。或者像网上一般人介绍的那样,在ETH配置的时候选择中断模式, 甚至,在CubeMX的配置界面中,已经找不到 ETH_RX_MODE这个选项了, 更麻烦的是生成的代码中,连heth.Init.TxMode也永久性的彻底消失了。。。
一下子就把使用以太网中断接收模式的门槛提到了很高。


而使用轮询方式,如果项目要求不高还行, 如果要求高,,,会有很麻烦的丢包率,特别是当你的项目程序很复杂的时候,,,这个丢包率足以让上位机那边的人天天找你麻烦,。。。

当然, 如果中断设置不当,也会有很多问题。比如频繁进入TCP中断,导致其他部分什么也干不了。因此,必须将中断的优先级设置为最低级, cubeMX能给的就只有 3.3了,,,
/***************************************配置中断*************************************************/
那么要解决这个吓人的网络通讯丢包,那就必须使用中断模式了。目前只能通过改LWIP的内核代码来实现。
配置方法如下(假设你已经完全掌握了CUBEMX的ETH轮询配置方法)
1.还
CubeMXETH中断模式配置解决网络丢包问题

文章讲述了在CubeMX中配置以太网时遇到的问题,尤其是ETH中断模式的消失。作者建议通过修改LWIP内核代码,将数据包读取移至中断服务函数以降低丢包率,并提供了具体步骤。
最低0.47元/天 解锁文章
633





