600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > ESP32 ESP-IDF开发环境搭建 Windows下基于ESP-IDF | Cmake | VScode插件的 ESP32 开发环境搭建

ESP32 ESP-IDF开发环境搭建 Windows下基于ESP-IDF | Cmake | VScode插件的 ESP32 开发环境搭建

时间:2019-05-24 02:20:34

相关推荐

ESP32 ESP-IDF开发环境搭建 Windows下基于ESP-IDF | Cmake | VScode插件的 ESP32 开发环境搭建

之前的一篇博客 Windows上基于ESP-IDF搭建ESP32开发环境 发布后,深受好评。几个月过去了,乐鑫的esp-idf-tools安装工具发生了较大的变化,VsCode插件的功能也愈加完善,在此更新下最新的安装过程。

同期间,我在ESP32的开发学习过程中(和大家催更的督促下),总结了一套使用方法,并将其汇总为一个开源驱动库-Easyio,目的是简化ESP-IDF开发框架的使用难度,基本几行代码就可以将一个外设搞定。

目前已开放预览版本,功能涵盖GPIO、Key、UART、ADC、DAC、RMT、I2C、SPI、LCD、SDCard、WIFI等驱动。Demo有诸如 红外遥控、RGB灯带、六轴IMU、TF卡电子相册、MQTT阿里云物联网这些有趣又实用的例程。下一步继续扩充OTA、LVGL、BLE、有线以太网和一些网络通信的Demo,打造一个开发简便且稳定强大的开源库。库的导入方式简便,直接拖入工程的components文件夹下即可使用。并有配套开发板,一板全能,适合与此教程配套使用,详见:Easyio驱动库-Github

言归正传,限于篇幅,开源驱动库 -Easyio的使用会在本专栏的其他文章介绍,下面开始正题:Windows下基于 ESP-IDF | Cmake | VScode插件的 ESP32 开发环境搭建。

3月更新:强烈建议使用离线版安装,因众所周知的原因,导致部分人访问Github巨慢,在线安装极有可能因下载失败导致安装失败。这里推荐用离线版安装,全程无坑。ESP32c3开发环境搭建 IDF V4.4离线版安装使用

如选择离线版安装,请访问上面链接,下面的安装过程则不再适用。

一、获取 ESP-IDF 和 esp-idf-tools

获取 ESP-IDF(建议V4.2版本,V4.3版本与我的Easyio驱动库有兼容性问题):ESP-IDF-Github下载esp-idf-tools-setup安装工具,此工具是乐鑫专为windows平台下快速安装ESP-IDF而设计:esp-idf-tools工具下载

乐鑫最新的ESP-IDF版本为V4.3,但在适配easyio库的过程中,发现很多奇怪现象,不单单是编译不通过的问题,有些能编译但在硬件上运行报错,就很离谱。而这些问题在V4.2上则不存在。鉴于V4.2已经对ESP32提供了足够的支持,V4.3着重添加了ESP32-S2/C3的功能,而自己的easyio库暂时没有兼并ESP32-S2/C3的精力,于是推荐使用V4.2版本。

我这台电脑之前已经安装了esp-idf-v4.3,再cloneV4.2需要存放到不同的路径。

先将Python装好,版本3.8及以上。

勾选最下面的 Add xxx to PATH,安装。

更新,这一步也是必须的,不然后面运行Vscode插件可能会报错。

windows搜索cmd,使用命令行窗口:python.exe -m pip install --upgrade pip

二、安装 esp-idf-tools-setup

esp-idf-tools-setup可以看作是IDE的安装向导,它可以非常方便的安装编译和调试环境,并绑定ESP-IDFSDK。其也自带了一款深度定制的IDE -ESP-IDF Eclipse,不过在使用上差强人意。我是更喜欢VsCode一些,并且VsCode配合上乐鑫的插件,coding体验一点也不比正经的IDE差。

运行esp-idf-tools-setup安装工具。接受,NEXT。

使用本地的ESP-IDF,选择刚刚解压的目录。

ESP-IDF Tools安装路径,默认 Next。

注意:如果以前安装了其他版本的ESP-IDF,建议这里手动更改下文件夹路径。

默认,下一步,安装。

等待安装完成。

之后ESP-IDF在本地就已经安装好了,桌面上会生成几个快捷方式。

通过这些工具,能够完成对ESP32工程的编辑、编译、调试工作。不过由于ESP-IDF Eclipse体验不佳,下面使用VSCode插件,将VSCode作为ESP32开发的IDE。

三、VSCode插件安装

本来呢,Vscode是不能被叫做IDE的,不过乐鑫提供了一个异常强大的插件…于是就顺理成章的转正了。乐鑫官方提供Vscode插件,一站式安装,直接将Vscode升格为IDE,配合上Vscode原有的插件、主题,coding的过程十分惬意。

打开VSCode,搜索esp-idf,安装插件。

插件安装完后,查看 - 命令面板(快捷键Ctrl+Shift+P)。

输入configure esp-idf extension,点击。

选择高级。

修改IDF版本,选择刚刚安装的IDF本地目录。

【注意】这里我疏忽了,图中第三个下拉框才是ESP-IDF的路径,也就是之前clone下来的IDF路径。我这里忘记选择D盘的SDK路径了,导致未找到IDF,于是它又在C盘下给我clone了一遍,不过好在最后能正常使用。但因为重新下载SDK,这次的安装时间被拉长了很久。

第三个下拉框选择跟第四个相同的路径。

等待安装。

安装缺少组件。

最终安装成功。

四、用VSCode创建ESP32工程

VSCode插件已经安装好了,下面介绍下功能。

首先用Vscode插件,从SDKDemo模板中创建个新工程。ESP-IDF自带了丰富的Demo,这些都会是以后学习的重要资源。

查看 - 命令面板(快捷键Ctrl+Shift+P)。输入show examples projects,点击。

点击弹出的Use current ESP-ID,使用本地SDK

最终显示这样的界面。左侧是SDK中的Demo列表,右侧是Demo的功能描述。点击例程blink,点击Create project using example blin。创建一个最简单的工程blink,作为示例。

选择一个文件夹,作为工程的存放路径。

之后插件就会以SDK中的blink为模板,自动创建一个新工程。

blink.c的功能很简单,配置Pin 5为推挽输出IO,以1s为间隔让灯在亮灭的状态间切换,并用串口打印状态。

留意左下角的图标。从左到右分别是:选择下载端口设置(插件化的 MenuConfig)清理工程(clean)编译(build)下载(flash)打开调试终端(monitor)一键 编译+下载+打开调试终端

左下角是插件提供的一些工具,功能为:

最后一个像火苗的图标,他的功能是build + flash + monitor。可以一键完成编译下载打开监视窗口,写完代码自己去喝茶转转,等它自动完成就行。

代码内容是让 GPIOPin 5来回输出0/1的电平,来控制LED闪烁。

而我电路连接的LED是在别的GPIO上,需要更改输出端口。

LED输出端口的更改可以在blink.c中,直接修改BLINK_GPIO宏定义。

也可通过左下角的GUI Configuration tool来配置LED端口,将以前的5改为自己电路的端口。

更改后,点击保存。就可以将这个窗口x掉了。

因为我们的硬件平台是ESP32,而ESP-IDF默认编译输出对象就是ESP32,不需要额外更改。

插入开发板,点击左下角的选择端口图标,选择端口。(需要提前安装USB转串口的驱动)

再点击最末尾的图标,进行一键编译下载打开监视窗口

运行现象,开发板LED闪烁,终端输出LED亮灭状态。

注意

如果看过我以前的搭建开发环境的文章 ESP-IDF搭建ESP32开发环境 ,应该知道早期ESP-IDFVSCode插件体验并不友好,容易安装失败出现乱码,需要借助外部工具来编译、调试。我一开始也以为是插件兼容性的问题,可是后来将电脑从以前的i5四代,换为另外两台六代、七代,就再也没有这个问题。所以现在严重怀疑是电脑硬件或者系统的问题,如有同样问题的小伙伴,建议更换别的电脑重试。

如果更换硬件平台后,VSCode插件仍有兼容性问题。请参考我以前的文章。

ESP32开发 0.windows Vscode开发环境搭建,基于esp-idf-V4.2 | Cmake | Vscode插件

乐鑫ESP32开发 1.Vscode创建新工程,编译,下载烧录,监视端口,点亮一个LED

后续、Easyio开源驱动库-使用教程

我在ESP32的开发学习过程中(和大家催更的督促下),总结了一套使用方法,并将其汇总为一个开源驱动库-Easyio,目的是简化ESP-IDF开发框架的使用难度,基本几行代码就可以将一个外设搞定。

目前已开放预览版本,功能涵盖GPIO、Key、UART、ADC、DAC、RMT、I2C、SPI、LCD、SDCard、WIFI等驱动。Demo有诸如 红外遥控、RGB灯带、六轴IMU、TF卡电子相册、MQTT阿里云物联网这些有趣又实用的例程。下一步继续扩充OTA、LVGL、BLE、有线以太网和一些网络通信的Demo,打造一个开发简便且稳定强大的开源库。库的导入方式简便,直接拖入工程的components文件夹下即可使用。并有配套开发板,一板全能,适合与此教程配套使用,详见:Easyio驱动库-Github

ESP32开源驱动库Easyio的使用,基于ESP-IDF开发框架,非Arduino

ESP32开发板开源计划

现已开源一款ESP32物联网开发板,支持WIFI、蓝牙、以太网、RS485、CAN通信。板载6轴IMU、温湿度传感器、38K红外遥控收/发、独立RTC、TF卡座。USB和18650双电源供电,有2.0寸单点电容屏可用,配套各外设驱动和LVGL源码。Github、立创EDA、CSDN全云端同步更新。

详情可见:

ESP32-IOT-KIT 开发板介绍:

ESP32开发板开源啦 ESP32-IOT-KIT全开源物联网开发板

PCB硬件:

立创EDA:ESP32开发板 IOT-KIT原理图、PCB、BOM

打样免费的时代,速去JLC白嫖PCB。

另有在售成品硬件,免去打样采购手焊的苦恼:

我的淘宝小店,基础149满配218单独的2.0寸电容触摸屏购买链接:

2.0寸ST7789V+FT6236U单点电容触摸屏IPS LCD模组 240x320

开源学习交流Q群:827686418

参考资料 在线帮助文档

ESP-IDF 快速入门

ESP-IDF API编程指南

ESP32 硬件设计参考

欢迎点赞、收藏,后续会陆续更新ESP32Easyio的使用。开发板计划也在进程中,敬请期待。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。