LwIP错误ip_reass_tmr()获取

时间:2015-12-15 13:32:43

标签: stm32 lwip

我正在尝试在stm32f407发现(以太网扩展/ RMII)上运行LwIP,并且我的LwIP调试输出显示:

netif_set_ipaddr: netif address being changed
netif: IP address of interface  set to 192.168.1.4
netif: netmask of interface  set to 255.255.255.0
netif: GW address of interface  set to 0.0.0.0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=arp_timer arg=0
tcpip: etharp_tmr()
etharp_timer
sys_timeout: 0x20000bb8 msecs=5000 handler=arp_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0
stmf calling h=ip_reass_timer arg=0
tcpip: ip_reass_tmr()
sys_timeout: 0x20000bcc msecs=1000 handler=ip_reass_timer arg=0

有些人可以告诉我们发生了什么,为什么运行sys_timeout以及使用什么ip_reass_tmr()。 什么可能产生这种输出的错误?

1 个答案:

答案 0 :(得分:1)

输出中没有任何内容(1)表示出现任何错误或错误。

这只是调试输出,由您定义TIMERS_DEBUG ETHARP_DEBUG以及可能来自lwip/opt.h的其他人,以及通过LWIP_DEBUG全局启用调试打印输出{ {1}}

lwip/debug.h是一个处理计时器的函数。 TCP / IP堆栈需要各种定时器,例如超时等待IP分片,超时ARP条目,传输/重传TCP段和ACK等

定期调用

sys_timeout()来丢弃旧的IP片段,其中不会收到所有IP片段(即使没有任何操作,也会定期调用计时器 - 只要你启用了它lwip堆栈的ip_reass_tmr()选项。)

(1)除非您已经配置了默认GW为0.0.0.0 - 这意味着您的堆栈只能与本地子网上的设备通信,而不能与192.168.1.4/之外的任何设备通信24个子网。