enc28j60+uip奇怪的问题,特定情况下初始化很多次才成功。

2019-08-17 07:39发布

最近学习uip,mini板+enc28j60模块,enc28j60的驱动直接用的例程里的,参考例程移植了uip,加了几个tcp的测试app,都工作正常。之后又加了个简单的web服务器,在main()中加了web服务器的初始化函数simple_webserver_init(),它的内容就一句uip_listen(HTONS(80)),此时程序就不正常了,每次启动都卡在while(tapdev_init())里面,要初始化好几十次才成功。要是屏蔽掉simple_webserver_init()或者直接用uip_listen(HTONS(80)),每次初始化就一次成功。

更奇怪的是我后来又增加了一个udp的测试app,在main()中simple_webserver_init()后面加了一个udp_test_app_init(),此时反而初始化就一次成功了。

我就奇怪udp_test_app_init()  simple_webserver_init()这几个函数都是放在tapdev_init()后面的,为什么会影响到tapdev_init()的成功呢?请原子哥和各位高手帮忙分析下,谢谢!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。