嵌入式技术论坛
直播中

ss

8年用户 8762经验值
擅长:电源/新能源 制造/封装 RF/无线
私信 关注
[经验]

at_device没有使用power pin导致网络异常的解决办法

最近在STM32f411平台调试了一套: rt-thread+ec600+ota+mqtt的实例,为之后的项目做准备,先说一下,调试过程中我遇到的问题:
1、刚启动的时候,可以ping 通网址,过一会,就不行了,网卡设备就掉了,再也不能Ping 了
2、但是这个时候mqtt发送消息是可以的正常的,ota升级也是可以的,但是mqtt用到了Ping命令,会间断的重新启动mqtt服务
3、以上两个问题影响了设备的稳定性,立志解决他们。
解决过程:
1、边调试,边查看源码,发现是这个Link_up断开了

2、由于这个连接状态的改变,导致了网卡设备的异常,我们再来找这个标志是怎么判定的,最终在这个地方找到了原因,因为我没有使用power_pin,所以这里直接返回了RT_ERROR,对于这点,貌似 相关资料并没有提到

3、找到问题原因,接下来我们说怎么做,

3.1 第一种-不修改官方库,在自己的函数中,获取网卡设备,自己设置: ec200x->power_status = RT_TRUE;3.2 第二种-修改官方库,在初始化函数中,将default power状态改为on如下图:

4、改完以后,网卡就比较稳定了

更多回帖

发帖
×
20
完善资料,
赚取积分