各位大神,小弟我最近使用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 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 基于MCP23S17的输入输出功能模块控制被打赏¥20元 | |
| 【S32K3XX】SPD 软件包使用Link文件修改被打赏¥22元 | |
| Switch-Case局部变量定义问题被打赏¥23元 | |
| 基于米尔TIAM62L开发板的串口通信及应用被打赏¥20元 | |
| PCF8574功能模块及其使用被打赏¥20元 | |
| 传感器LSM6DSO及LIS3MDL的功能检测被打赏¥18元 | |
| LPS25HB气压传感器及其检测被打赏¥18元 | |
| HTS221温湿度传感器及其检测被打赏¥18元 | |
| 【S32K3XX】HSE FW 版本更新被打赏¥21元 | |
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |


我要赚赏金
