完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
hi 我配置lwip为静态ip地址, 启用 sal, fal和flashdb 发现板子上电的时候,如果没有插入网线,rtthread会卡在 \ | / RT - Thread Operating System / | \ 4.0.3 build May 9 2022 2006 - 2020 Copyright by rt-thread team lwIP-2.0.2 initialized! 这里 直到我插入网线程序就会继续进行: \ | / RT - Thread Operating System / | \ 4.0.3 build May 9 2022 2006 - 2020 Copyright by rt-thread team lwIP-2.0.2 initialized! [103581] I/sal.skt: Socket Abstraction Layer initialize success. [103589] I/SFUD: Find a Winbond flash chip. Size is 16777216 bytes. [103596] I/SFUD: W25Q128JV flash device is initialize success. [103603] I/SFUD: Probe SPI flash W25Q128JV by SPI device spi10 success. 请问这是为啥。。如果不插网线系统就不能工作了吗。。 另外还有个诡异的问题,如果我在main里面初始化了 flashdb, 我发现网络就不通了, 抓包发现,设备可以发包,但是收不到包.. 谢谢 |
|
相关推荐
3个回答
|
|
LwIP的初始化等级是INIT_PREV_EXPORT, 打印LwIP初始化成功是在lwip_system_init函数中调用的;
网卡的初始化rt_hw_stm32_eth_init的初始化等级是INIT_DEVICE_EXPORT,它的等级低于PREV。 卡住了的话,debug调试一下网卡,或者打开drv_eth.c的log输出为debug级别,即在drv_eth.c中取消屏蔽DRV_DEBUG即可,看看到底卡死在哪一步?从你的ulog输出来看,走了很多tick才到SAL部分,怀疑Eth硬件初始化的地方耗时太多。 #define DRV_DEBUG 另外,查看一下PHY_RESET_DELAY被配置成了多少?不清楚你的LwIP的具体配置,暂时只能想到这么多。 第二个问题,FlashDB没有用过,不清楚。建议在调试的时候,先不用这个包,减少问题的耦合程度,确认一下Lwip,eth的时间长的真实原因。然后再来解决flashdb引起的问题为好。 |
|
|
|
跟了一下。。发现亚特利的rtthread phy初始化居然卡在
do { timeout++; } while (!(ETH_ReadPHYRegister(PHYAddress, PHY_BSR) & PHY_Linked_Status) && (timeout < PHY_READ_TO)); phy不link就卡死在这里。。 草读了一遍原厂的程序,居然phy状态这些都不读也不设置的。。 我现在把 phy的协商速率关掉了。。目前不会卡死了。。不知道会不会有什么隐患.. |
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
782 浏览 0 评论
4050 浏览 0 评论
如何使用python调起UDE STK5.2进行下载自动化下载呢?
2502 浏览 0 评论
开启全新AI时代 智能嵌入式系统快速发展——“第六届国产嵌入式操作系统技术与产业发展论坛”圆满结束
2919 浏览 0 评论
获奖公布!2024 RT-Thread全球巡回线下培训火热来袭!报名提问有奖!
31346 浏览 11 评论
72891 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 22:56 , Processed in 0.515666 second(s), Total 43, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号