完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
硬件平台: STM32F407+LAN8740A
软件平台:4.0.3+pahomqtt1.1.0 复现方法:断开路由器外网网线 问题现象:mqtt线程卡死,导致publish消息无反应,ping百度正常,说明外网通信正常 调试发现publish线程卡死,mqtt0线程也卡死,不确定好卡在哪里 publish代码如下: while(1){ Retry = 10; rt_memset(msg_ptr,0,sizeof(PubData_t)); if (rt_mq_recv(&MQTTPubMQ, msg_ptr, sizeof(PubData_t),RT_WAItiNG_FOREVER) == RT_EOK){ while(Retry--){ easyblink(LED_Communication, 1, LED_SHORTDUTY>>1, LED_SHORTCYCLE>>1); msg_ptr->timestamp+=28800; LOG_D("%.*s", 25, ctime(&msg_ptr->timestamp)); list_mem(); itoa(msg_ptr->timestamp,Filename,10); rt_memcpy(Filename+strlen(Filename),".jsonx00",6); if(!MqttClient.isonline){ LOG_E("Wait MQTT Connect"); } while(!MqttClient.isonline ){ rt_thread_delay(1000); } while(Socket_Busy== RT_TRUE){ rt_thread_delay(1000); } Socket_Busy = RT_TRUE ; if(paho_mqtt_publish(&MqttClient, msg_ptr->PUB_QOS, msg_ptr->Topic, msg_ptr->PayLoad)){ LOG_E("PUB %s Fail",msg_ptr->Topic,msg_ptr->PayLoad); } else{ LOG_I("PUB %s %s Success",msg_ptr->Topic,msg_ptr->PayLoad); break; } } } } } |
|
相关推荐
1个回答
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
753 浏览 0 评论
AI模型部署边缘设备的奇妙之旅:如何在边缘端部署OpenCV
2714 浏览 0 评论
tms320280021 adc采样波形,为什么adc采样频率上来波形就不好了?
1368 浏览 0 评论
1955 浏览 0 评论
1523 浏览 0 评论
74952 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 02:08 , Processed in 0.646239 second(s), Total 69, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号