各位大神,小弟我最近使用stm32f103+esp8266+mqtt(Qs0),发现一个奇怪问题,程序中采用串口DMA收发,每3秒发布一次数据,30s一次PING,并根据是否有返回PINGRESP值来进行重连,pc端mqtt客户端订阅和发布数据,然而经常遇到程序持续跑大概10来小时左右后,pc端mqtt客户端接订阅不到数据,也不能发布数据,检查板子发现mcu并没有死机,而且通过测试屏上的数据发现esp8266所在串口在发送PING后有接收中断,而且返回了正确PINGRESP值,程序中发布数据的程序还在执行,这时pc端mqtt客户端接订阅不到数据,也不能发布数据,使用手机端mqtt客户端也是一样情况,由于返回了正确PINGRESP值,这样一来程序误认为mqtt连接正常。最后单独将8266复位一下,mcu任然保持运行,发现串口在发送PING 30s内没有接收中断(wifi复位后已断开mqtt连接),也就没有检查到返回PINGRESP值,程序随后开始重连,一回后连接正常,PING 也开始正常,一切正常了。—————— 这种现象非常奇怪,两套同样的板子(不同ClientID)都有这个问题,而且时有发生,一直搞不明白什么原因导致 ,请各位大神帮忙指点指点,先谢过了! |
共4条
1/1 1 跳转至页
stm32f103+esp8266+mqtt碰到的奇怪问题

关键词: stm32f103 esp8266 mqtt



共4条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【Zephyr】使用Zephyr外设初始化过程解析被打赏30分 | |
【S32K146】S32DS watchdog 配置使用被打赏20分 | |
【Zephyr】使用 IAR 调试 Zephyr 镜像被打赏20分 | |
赚取电动螺丝刀+电源电路理论知识分享1被打赏5分 | |
我想要一部加热台+分享常见运算放大器电路的应用被打赏5分 | |
【Zephyr】MCXN947 Zephyr 开发入门适配shell被打赏20分 | |
我想要一部加热台+常见的MOS管驱动电路被打赏5分 | |
【我要开发板】6.联合MATLAB记录数据被打赏50分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下串口调试printf输出记录被打赏29分 | |
【瑞萨RA2E1开发板】:使用ADC功能实现位移传感器采集方案被打赏20分 |