文章目录

  • 1.下载esp-qcloud源代码
  • 2.创建led_light新工程
    • 2.1拷贝led_light例程
    • 2.2修改《CMakeLists.txt》
  • 3.配置工程
    • 3.1配置开发板及GPIO
    • 3.2输入腾讯物联网控制台设备三元组
    • 3.3指定配网方式
  • 4.编译工程,下载程序到目标板
    • 4.1编译工程
    • 4.2下载bin到目标板
  • 5.填坑:找不到头文件
  • 6.使用腾讯连连小程序测试ESP设备

腾讯物联网控制台专门为ESP32开发一个开源的例程,针对智能灯应用,可以用腾讯连连小程序控制。这篇文章我们介绍如何在vscode+esp-idfV4.4的环境下,进行可视化开发。

1.下载esp-qcloud源代码

1.码云仓库:esp-qcloud
2.github仓库:esp-qcloud
我用的是码云的仓库,下载后解压后生成文件夹 《esp-qcloud-master》,改成 《esp-qcloud》,放到 esp-idf安装目录的 《example》 文件夹里面。以我的路径为例,是这样的(后面我们要用到这个路径 《$ENV{IDF_PATH}/examples/esp-qcloud》):

放在 《example》 文件夹里面的好处是,后面我们创建例程时,会拷贝一份到我们的工作目录下面,然后我们修改代码时不会影响到原文件。

2.创建led_light新工程

esp-qcloud有一个example,名字为《led_light》路径 如下:

我们就要对这个工程进行编译。

2.1拷贝led_light例程

在命令面板搜索 “example”

选择 Use current ESP-IDF,然后路径《E:\esp32\esp-idf\examples》下面所有例程都被列出来:

找到《led_light》,点击蓝色按键,会跳出一个选择目标文件夹的窗口,我们选择好后,会拷贝《led_light》到目标文件夹。

2.2修改《CMakeLists.txt》

因为几乎每个文件夹都有一个《CMakeLists.txt》,是 《led_light》 下面的《CMakeLists.txt》。

正确的文件:《./led_light/CMakeLists.txt》
错误的文件:《./led_light/main/CMakeLists.txt》

修改的目的是指定 QCLOUD_PATH的路径。根据第一章我们放置《esp-qcloud》文件的位置来设置。
《CMakeLists.txt》文件内容(重点在第14,15行):

# The following lines of boilerplate have to be in your project's CMakeLists
# in this exact order for cmake to work correctly
cmake_minimum_required(VERSION 3.5)
add_compile_options(-fdiagnostics-color=always)if(EXISTS ${CMAKE_CURRENT_LIST_DIR}/../../config/)set(QCLOUD_PATH ${CMAKE_CURRENT_LIST_DIR}/../..)
elseif(EXISTS ${CMAKE_CURRENT_LIST_DIR}/components/qcloud)set(QCLOUD_PATH ${CMAKE_CURRENT_LIST_DIR}/components/qcloud)
elseif(EXISTS ${CMAKE_CURRENT_LIST_DIR}/components/esp-qcloud)set(QCLOUD_PATH ${CMAKE_CURRENT_LIST_DIR}/components/esp-qcloud)
elseif(EXISTS $ENV{IDF_PATH}/components/qcloud)set(QCLOUD_PATH $ENV{IDF_PATH}/components/qcloud)
elseif(EXISTS $ENV{IDF_PATH}/examples/esp-qcloud)set(QCLOUD_PATH $ENV{IDF_PATH}/examples/esp-qcloud)
else()message(FATAL_ERROR "Please configure the path of `QCLOUD_PATH`")
endif()if(NOT DEFINED IDF_TARGET)set(IDF_TARGET "esp32")
endif()# Add QCloud components and other common application components
# This example uses an extra component for common functions such as led and button.
set(EXTRA_COMPONENT_DIRS ${QCLOUD_PATH} ${QCLOUD_PATH}/examples/common_components/led${QCLOUD_PATH}/examples/common_components/button)# Performance Options
if(NOT DEFINED PERF)set(PERF "defaults")
endif()
set(SDKCONFIG_DEFAULTS ${QCLOUD_PATH}/config/sdkconfig_defaults/sdkconfig.${PERF}.${IDF_TARGET})include($ENV{IDF_PATH}/tools/cmake/project.cmake)
string(REGEX REPLACE ".*/\(.*\)" "\\1" CURDIR ${CMAKE_CURRENT_SOURCE_DIR})
project(${CURDIR})git_describe(PROJECT_VERSION ${COMPONENT_DIR})
message("Project commit: " ${PROJECT_VERSION})

3.配置工程

此时,我们可以开始配置工程:

3.1配置开发板及GPIO

这个工程提供3种开发板选项,我们选择自定义开发板,根据实际情况选择GPIO:

3.2输入腾讯物联网控制台设备三元组

现在腾讯物联网控制台创建一个设备,创建方法见文章 《ESP32:腾讯云物联网控制台创建iot设备(使用腾讯连连控制ESP32)》。把这个设备的参数填到这里:

3.3指定配网方式

这里提供了3种配网:

  1. smart config(AirKiss)
    2.soft AP
    3.blufi

我们就选第一种:

到此,配置完成,保存配置,可以编译工程。

4.编译工程,下载程序到目标板

4.1编译工程


编译完成,生成各种文件:

4.2下载bin到目标板

使目标板进入下载模式,点击下载,等待下载完成,按复位键运行程序。

5.填坑:找不到头文件

尽管编译没有出错,但是vscode还是提示有几个错误:

在文件《 c_cpp_properties.json》加入esp-qcloud所在路径 “${config:idf.espIdfPathWin}/examples/esp-qcloud/**”,

注意,有2个地方增加相同的内容。
重新编译一下,就可以消除错误。

6.使用腾讯连连小程序测试ESP设备

详情见:《ESP32:腾讯云物联网控制台创建iot设备(使用腾讯连连控制ESP32)》

VScode+esp-idf:编译腾讯物联网控制台ESP32例程(esp-qcloud)相关推荐

  1. 腾讯物联网云平台 密钥 MQTT参数生成及密码加密算法实现

    腾讯物联网云平台 密钥 MQTT参数生成及密码加密算法实现 腾讯云三元组 腾讯云三元组 首先在腾讯物联网云平台创建好项目.产品.设备,然后获取该设备的三元组.下面通过我的创建的产品作为示例: Prod ...

  2. 基于STM32L431设计的云端绿化管理系统(ESP8266+腾讯物联网云平台)

    一.环境介绍 MCU: 采用意法半导体低功耗芯片 STM32L431RCT6 编译软件:  Keil5 + CubeMX 云平台: 采用腾讯物联网云平台 工程完整源代码与配套资料下载地址:https: ...

  3. VScode配置makefile编译

    VScode配置makefile编译 Author:onceday date:2022年7月26日 1.修改终端任务配置(Terminal) {// See https://go.microsoft. ...

  4. vs怎么编译php文件,vscode怎么初始编译

    vscode怎么初始编译? 1.vscode语言环境改为中文 [WHY]才发现我的环境一直都是英文,来改一下吧... a.按下快捷键: Windows.Linux 快捷键是:ctrl+shift+p ...

  5. 腾讯物联网操作系统正式开源,最小体积仅1.8 KB

    9月18日,腾讯宣布将开源自主研发的轻量级物联网实时操作系统TencentOS tiny.相比市场上其它系统,腾讯TencentOS tiny在资源占用.设备成本.功耗管理以及安全稳定等层面极具竞争力 ...

  6. 腾讯物联网开发者社区平台Tencent Things Network发布 让IoT应用开发快速安全

    5月21-23日,由云南省人民政府指导,云南省文化和旅游厅.昆明市人民政府.腾讯公司共同主办,腾讯战略升级后打造的规格最高.规模最大的行业生态大会"全球数字生态大会"在昆明隆重举行 ...

  7. stm32 vscode 编译_STM32开发之 VSCode+gcc环境编译

    STM32开发之 VSCode+gcc环境编译 一.程序安装 1.VSCode:https://code.visualstudio.com/Download 好用到爆的文本编辑器,配合强大的插件,使你 ...

  8. STM32+ESP8266+MQTT微信小程序SoftAP一键配网接入腾讯物联网平台

    STM32+ESP8266+MQTT微信小程序SoftAP一键配网接入腾讯物联网平台   Wi-Fi 配网,指由外部向 Wi-Fi 设备提供 SSID 和密码(PSW),让 Wi-Fi 设备可以连接指 ...

  9. VSCode源码编译

    前期准备 VSCode源码官方文档及编译步骤 https://github.com/microsoft/vscode/wiki/How-to-Contribute Git(2.39.1) Node.J ...

  10. STM32+ESP8266+MQTT协议连接腾讯物联网开发平台

    一.环境介绍 单片机采用:STM32F103C8T6 上网方式:采用ESP8266,也可以使用其他设备代替,只要支持TCP协议即可.比如:GSM模块.有线网卡等. 开发软件:keil5 物联网平台: ...

最新文章

  1. android activity使用,android,NativeActivity使用
  2. leetcode 636. Exclusive Time of Functions | 636. 函数的独占时间(Stack)
  3. C#发布网站在web.config和IIS中设置Session过期时间
  4. Linux基础命令---cp
  5. 继承与data member之多重继承
  6. mysql字符串查询_mysql字符串查询常用命令
  7. 【Python爬虫实战】微信爬虫
  8. 图神经网络的实现,神经网络框架图
  9. mpush部署实现与测试
  10. 3d人体智能测试软件,人体系统女性3Dapp
  11. 通信工程是计算机类还是电子信息类公考,通信工程属于电子信息类吗
  12. 用飞书来谈恋爱,飞书机器人定时给女朋友问好!
  13. injected stylesheet注入样式导致el-button内文字为空白
  14. ASCII字符代码表
  15. python字符串对象所有基本方法简要
  16. CSDN 博客 修改文章搜索为 bing 搜索,且只搜索自己的博客的方法
  17. 二叉树输入与存储的问题
  18. 公文专用计算机,[计算机]常用公文写作方法.doc
  19. bat如何创建多级文件夹
  20. K8s scheduler 调度:NodeName、NodeSelector与Taint

热门文章

  1. 安装office2013报安装程序找不到OneNote.zh-cn、安装源不存在
  2. 2023计算机毕业设计SSM最新选题之java养生知识平台99ofs
  3. (精华2020年6月2日更新) TypeScript函数详解
  4. kernel中的日志打印
  5. 计算机如何驱动无线网络,详细教你电脑无线网卡驱动怎么安装
  6. html 毛笔书写效果,canvas 手写毛笔字效果
  7. 计算机函数sumif实例,「稻客说函数」SUMIF函数实例详解
  8. [培养锻炼能力][耳机]耳机线断裂维修经验
  9. QDockWidget标题栏
  10. 【考研数学】五. 二重积分