各位大神,小弟我最近使用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 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 片外存储Flash使用方法(Arduino IDE环境)被打赏¥22元 | |
| 三分钟快速上手ESP-NOW(ArduinoIDE环境)被打赏¥23元 | |
| 【S32K3XX】LPSPI参数配置说明被打赏¥21元 | |
| 在WT9932C61-TINY上实现超声波测距被打赏¥22元 | |
| 基于WT9932C61-TINY的环境构建及OLED屏驱动测试被打赏¥20元 | |
| 【S32K3XX】Core-to-Core 中断使用被打赏¥21元 | |
| 「AI编程记录--含源码」用一晚上的时间写一个esp32的示波器被打赏¥19元 | |
| STM32C0116DK开发探索记(3)被打赏¥30元 | |
| STM32C0116DK开发探索记(2)被打赏¥24元 | |
| STM32C0116DK开发探索记(1)被打赏¥29元 | |


我要赚赏金
