乐鑫AT固件ESP32-WROOM-32-AT-V3.2.0.0发送MQTT命令连接失败问题分析与解决

模块通过串口助手发送MQTT的所有连接命令都是正常的

配置MQTT:

AT+MQTTUSERCFG=0,1,"publisher","bCDEo8NukvSOBfIXUj8","",0,0,""

连接MQTT:

AT+MQTTCONN=0,"52.195.11.47",1883,1

通过STM32发送AT+MQTTUSERCFG命令返回OK,但发送AT+MQTTCONN返回失败,经过反复对比,我的程序没有任何问题,与调试助手发送的命令一模一样,但就是不能连接,于是我用串口助手发送AT+MQTTUSERCFG命令,用STM32发送AT+MQTTCONN命令居然正常,怀疑是AT+MQTTUSERCFG并没有被乐鑫模块识别,可是模块居然返回OK,模块存在bug。

经过各种验证,发现降低串口的单次发送长度可以解决,修复发送函数如下:

void uart0_send_str(const char *str)
{
    int len=strlen((char *)str);
    int shift =0;
    int size;
    //at_send_bytes((uchar *)str,len);//单次发送完
    while(shift<len)
    {
        if((len-shift) <20)//每次发送最多20字节
            size = len-shift;
        else
            size = 20;
        at_send_bytes((uchar *)str+shift,size);
        shift+=size;
        HAL_Delay(2);//延时2ms
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/849680.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在内网中反向代理清华镜像

在内网环境中&#xff0c;服务器经常需要访问外部资源&#xff0c;如开源软件的镜像站。然而&#xff0c;直接访问可能受限于多种因素&#xff0c;如网络策略或地理位置。此时&#xff0c;设置一个反向代理服务器可以极大地方便内网中的服务器访问和更新软件包。本文将介绍如何…

<Python><PyQt5>基于python使用PyQt5编写UI时,如何在单独的文件里构建菜单项然后调用?

前言 本文纯作为记录&#xff0c;但如果恰好有相同需要的朋友&#xff0c;也可以看看。本文实现的是&#xff0c;使用PyQt5时&#xff0c;如果需要添加menu项&#xff0c;但不想把所有元素都写在一个主程序文件中&#xff0c;部件太多的话&#xff0c;程序臃肿&#xff0c;因此…

[NOVATEK] NT96580行车记录仪功能学习笔记

一、u-Boot升级灯 运行u-Boot程序时LED灯闪烁,找到运行过程中一直在运行的函数在里面进行LED引脚电平的翻转 宏定义 Z:\SunFan\AHD580\pip\na51055_PIP\BSP\u-boot\include\configs\nvt-na51055-evb.h Z:\SunFan\AHD580\pip\na51055_PIP\BSP\u-boot\drivers\mtd\nvt_flash_…

MATLAB format

在MATLAB中&#xff0c;format 是一个函数&#xff0c;用于控制命令窗口中数值的显示格式。这个函数可以设置数值的精度、显示的位数等。以下是一些常用的 format 命令&#xff1a; format long&#xff1a;以默认的长格式显示数值&#xff0c;通常显示15位有效数字。format s…

什么是专业神秘顾客公司?(深圳神秘顾客公司)

专业神秘顾客公司是指那些拥有经过严格培训的专业“神秘顾客”&#xff0c;并为客户提供神秘顾客调查业务的公司。以下是关于专业神秘顾客公司的详细介绍&#xff1a; 一、定义与业务 专业神秘顾客公司&#xff0c;通常称为Mystery Shopper Company&#xff0c;其核心业务是为…

【Linux】深入解析动静态库:原理、制作、使用与动态链接机制

文章目录 前言&#xff1a;1. 什么是动静态库2. 动静态库的制作和使用3. 动态库的查找问题4. 理解动态库的加载4.1. 站在系统的角度理解4.2. 编址、可执行程序4.3. 动态库动态链接和加载问题 总结&#xff1a; 前言&#xff1a; 在软件开发中&#xff0c;动静态库是两种重要的…

11.盛水最多的容器

给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明&#xff1a;你不能倾斜容器。 示例 1&a…

Python基础总结之functools.partial

Python基础总结之functools.partial 在日常编程中&#xff0c;我们经常会遇到这样的情况&#xff1a;需要调用一个函数&#xff0c;但希望它的某些参数被预先设置好&#xff0c;而不是每次调用时都手动传递这些参数。Python 的 functools.partial 提供了一种优雅的方式来实现这…

编写程序提示用户输入一个数目(例如:100)、年利率(例如:5)以及月份数(例如:6),然后显示给定月份后账户上的钱数。

(财务应用程序:复利值)假设你每月向银行账户存 100美元&#xff0c;年利率为5%&#xff0c;那么每 月利率是 0.05/12-0.00417。 第一个月之后&#xff0c;账户上的值就变成:100*(10.00417)100.417 第二个月之后&#xff0c;账户上的值就变成(100100.417)*(10.00417)-201.252 第…

Switch刷机:安装Android系统和Linux系统

文章目录 Switch刷机解锁SwitchSwitchroot重要提示 安装Android系统安装Linux系统&#xff08;Ubuntu&#xff09;安装Lakka系统安装多系统&#xff08;和大气层系统、官方原生系统并存&#xff09; Switch刷机 解锁Switch 刷机的前提是要解锁bootloader&#xff0c;早期的NS…

C# Parallel 未完

在C#中&#xff0c;Parallel.For 是一个非常有用的功能&#xff0c;它允许将一个循环的迭代分布到多个线程上&#xff0c;以利用多核处理器的计算能力。Parallel.For 是 System.Threading.Tasks 命名空间下的 Parallel 类的一个方法。 以下是 Parallel.For 的基本用法&#xf…

call apply bind 修改this指向的区别

var obj1 {name: zhang,getName() {console.log(this.name)}}var obj2 {name: list,getName() {console.log(this.name)}}obj1.getName.call(obj2) //listobj1.getName.apply(obj2) //listobj1.getName.bind(obj2) // obj2.getName() //list call 改变this,自…

算法金 | 不愧是腾讯,问基础巨细节 。。。

大侠幸会&#xff0c;在下全网同名「算法金」 0 基础转 AI 上岸&#xff0c;多个算法赛 Top 「日更万日&#xff0c;让更多人享受智能乐趣」 最近&#xff0c;有读者参加了腾讯算法岗位的面试&#xff0c;面试着重考察了基础知识&#xff0c;并且提问非常详细。 特别是关于Ada…

[UE 虚幻引擎] DTLoadFbx 运行时加载FBX本地模型插件说明

本插件可以在打包后运行时动态加载FBX模型。 新建一个Actor 并添加一个 DT Runtime Fbx Component。 然后直接调用组件的函数 LoadFile 加载显示模型&#xff08;注&#xff1a;不支持模型动画&#xff09; FilePath : 加载模型的绝对路径。 Create Collision : 是否创建碰撞…

使用python绘制桑基图

使用python绘制桑基图 桑基图效果代码 桑基图 桑基图&#xff08;Sankey Diagram&#xff09;是一种用来表示流动&#xff08;如能源、资金、材料等&#xff09;在不同实体之间转移的图表。 每个流的宽度与流量成正比&#xff0c;通常用于显示能量或成本流动的分布情况。 桑基…

C++的重载

重载关系 同一作用域中&#xff0c;函数名相同&#xff0c;参数表不同的函数只有同一作用域中的同名函数才涉及重载问题&#xff0c;不 同作用域中同名函数遵循标识符隐藏原则 #include <QtCore/QCoreApplication> #include <QList> #include <QDebug> #in…

Cloudpods 强大的多云管理平台部署

简介 Cloudpods 是一款简单、可靠的企业IaaS资源管理软件。帮助未云化企业全面云化IDC物理资源&#xff0c;提升企业IT管理效率。 Cloudpods 帮助客户在一个地方管理所有云计算资源。统一管理异构IT基础设施资源&#xff0c;极大简化多云架构复杂度和难度&#xff0c;帮助企业…

AI绘画教程分享:Stable Diffusion使用指南,12000+AI关键词大合集

01 首先下载好SD的安装包&#xff08;百度、B站、小红书等都可以找到资源&#xff09;&#xff0c;用启动器开始运行 02 从这里下载别人的模型套用&#xff0c;可以多多探索一下&#xff01;以下是各个模型的具体介绍&#xff1a; 03 这就是我们打开的初始界面&#xff0c;常…

CondaSSLError: OpenSSL appears to be unavailable on this machine.

conda create -n x1 python3.7报错 PS C:\Users\Richardo.M.Song\Desktop\lele_seg\x1> conda create -n x1 python3.7 Collecting package metadata (current_repodata.json): failed CondaSSLError: OpenSSL appears to be unavailable on this machine. OpenSSL is requ…

Allure在jenkins中无法显示的问题

jenkins中使用allure生成报告需要注意工作环境和路径的配置 前提条件&#xff1a; jenkins容器中已安装jdk和allure jenkins中配置全局工具环境&#xff1a; 项目中配置allure路径&#xff1a; 路径来源&#xff1a; Path需要选择相对路径的allure-report、allure-results