各位前辈同好,请帮我看一下这个问题:
环境是STM32F107+DP83848
RTT 0.3.2 +lwip
网络中有若干不同类型的设备,计算机IP相机交换机.....
有组播包在网络中传递.
我的板子如果在"干净"的环境(计算机对联线/独立交换机)中运行,则运行1周以上没有发现故障.
但是如果在上面说的环境中,则不停的出现
pbuf_free: p->ref > 0
Assertion: 563 in ......
etlwipsrccorepbuf.c, thread tcpip
而且,随机的发生
hard fault on thread:tcpip
然后挂掉,等待看门狗动作.
我的应用中,只有一个UDP 5000端口的少量数据接收,和对网络上一台服务器的UDP client数据发送.
[img]https://club.rt-thread.org/uploads/3364_7f8926364998bc36def5613dad00846a.jpg[/img]
崩溃的状态
[img]https://club.rt-thread.org/uploads/3364_ce256e406e76355434f707e47f9e6183.jpg[/img]
有人能帮我吗?
在"干净"的环境中运行很正常,是否可以理解为,我如果在接收部分做好过滤,只接收PING/ARP/自己的特定端口包,就可以在这个环境中"存活"呢?
如果这样,应该如何做?STM32F107的MAC还是在lwip层做?
各位前辈同好,请帮我看一下这个问题:
环境是STM32F107+DP83848
RTT 0.3.2 +lwip
网络中有若干不同类型的设备,计算机IP相机交换机.....
有组播包在网络中传递.
我的板子如果在"干净"的环境(计算机对联线/独立交换机)中运行,则运行1周以上没有发现故障.
但是如果在上面说的环境中,则不停的出现
pbuf_free: p->ref > 0
Assertion: 563 in ......
etlwipsrccorepbuf.c, thread tcpip
而且,随机的发生
hard fault on thread:tcpip
然后挂掉,等待看门狗动作.
我的应用中,只有一个UDP 5000端口的少量数据接收,和对网络上一台服务器的UDP client数据发送.
[img]https://club.rt-thread.org/uploads/3364_7f8926364998bc36def5613dad00846a.jpg[/img]
崩溃的状态
[img]https://club.rt-thread.org/uploads/3364_ce256e406e76355434f707e47f9e6183.jpg[/img]
有人能帮我吗?
在"干净"的环境中运行很正常,是否可以理解为,我如果在接收部分做好过滤,只接收PING/ARP/自己的特定端口包,就可以在这个环境中"存活"呢?
如果这样,应该如何做?STM32F107的MAC还是在lwip层做?
举报