我是靠谱客的博主 阳光鲜花,最近开发中收集的这篇文章主要介绍esp32 mqtt接入百度云点亮led前言获取代码idf4.0版本mqtt流程编译,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

esp32配置mqtt

  • 前言
  • 获取代码
  • idf4.0版本mqtt流程
  • 编译

前言

首先先获取esp32和mqtt的相关代码,使用idf编译esp32的相关代码我已经放到了github上esp32配网连接mqtt代码,代码支持一键配网,密码保存到flash,上点自动从flash读取密码,联网失败后启动自动配网,包括idf3.32版本和idf4.0版本,两个版本不通用,同时包含微信小程序和python接入的代码

获取代码

从乐鑫官方的idf中随便复制一份到桌面,这里以window下idf4.0为例
,将代码复制到main文件夹,然后更改cmake编译文件在这里插入图片描述
打开cmake编译文件,把原先的blink.c改为下载的代码文件名
在这里插入图片描述
然后工程就搭建完了

idf4.0版本mqtt流程

在idf4.0中和idf3.3.2版本基本相差不大,主要还是使用回调机制
在这里插入图片描述
在获取到ip地址的时候启动mqtt服务
在这里插入图片描述
然后定义一个mqtt_cfg结构体,对mqtt三要素及ip地址进行配置,
在下面进行初始化,然后注册回调函数

esp_mqtt_client_register_event(client, ESP_EVENT_ANY_ID, mqtt_event_handler, client);//注册回调函数

在回调函数中,ESP_EVENT_ANY_ID表示一旦发生esp的任意事件,便可回调到mqtt_event_handler函数

在这里插入图片描述
上面便是回调函数,对esp事件id进行判断,判断是connet连接成功回调,还是subscribe订阅回调等,然后做相应处理,以上便是整个mqtt回调的流程,过程也相对简单。

编译

编译采用乐鑫最新的cmake编译方式
通过桌面上idf创建的idf cmd进入到代码文件夹,我的代码在桌面的blink文件夹中

cd blink

然后进行配置

idf.py menuconfig

根据esp32的容量型号进行配置,在window下不需要配置串口,在烧录下可以指定串口。配置完成后会生成config文件
然后进行编译

idf.py build

然后下载到flash并进行监控

idf.py -p PORT flash monitor

其中PORT为esp32在电脑上显示的端口
至此esp32使用密码mqtt对接百度云就完成了

最后

以上就是阳光鲜花为你收集整理的esp32 mqtt接入百度云点亮led前言获取代码idf4.0版本mqtt流程编译的全部内容,希望文章能够帮你解决esp32 mqtt接入百度云点亮led前言获取代码idf4.0版本mqtt流程编译所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部