1、安装 IDF环境离线包


  • 下载IDF V4.4的离线安装包,900多M:离线版IDF下载

  • 开始安装。
  • ESP32环境搭建_ESP32


  • 应用修复,后,再下一步。
  • ESP32环境搭建_ESP32_02


  • 选择自己的安装位置,下一步。
  • ESP32环境搭建_ESP32_03


  • 默认,下一步。
  • ESP32环境搭建_ESP32_04


  • 开始安装,等待安装完成。
  • ESP32环境搭建_ESP32_05


  • ESP32环境搭建_ESP32_06


  • ESP32环境搭建_ESP32_07


  • ESP32环境搭建_ESP32_08

  • 自带的Eclipse IDE需要JRE环境。因为我这是拿了台新系统的旧电脑来演示,什么工具都没有。

  • 不用理会,反正这个IDE自己用不习惯,后面用VSC。如个人真的有需要的话,再把JRE或者JDK装上。
  • ESP32环境搭建_ESP32_09


2、VScode乐鑫插件安装


  • VScode安装乐鑫插件,搜索并安装。
  • 截至目前最新的插件版本是V1.4.0。本教程的操作均基于此版本。
  • 插件安装完后,查看 - 命令面板(快捷键Ctrl+Shift+P)。
  • 输入 configure esp-idf extension,点击。
  • 选择最后一项。使用已存在的配置。
  • 前两种方式均是在线安装,网络不好的会比较慢或者干脆不能安装成功。因为刚刚已经使用离线包搭建好了环境,接下来选 使用已存在的配置 即可。
  • 插件会自动检测并识别系统内的位置环境。
  • 静待成功。
  • 【注意】如果未出现第三项,也就是未自动检测出已存在配置。请使用第二项 高级 安装。
  • 按如下操作。选择实际路径。
  • 稍后会提示安装缺少的工具,点安装后等待即可。

3、从IDF的Demo中新建ESP32工程


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

  • 查看 - 命令面板(快捷键Ctrl+Shift+P)。
  • 输入show examples projects,点击。
  • 点击弹出的 Use current ESP-ID,使用本地SDK
  • 也就是最开始用离线版安装环境的路径。
  • 稍后会显示如下的界面。

ESP32环境搭建_ESP32_10

4.创建工程

ESP32环境搭建_ESP32_11

ESP32开发板类型选择

使用的NodeMCU32S开发板

ESP32环境搭建_ESP32_12

ESP32环境搭建_ESP32_13

ESP32环境搭建_ESP32_14

串口连接开发板

ESP32环境搭建_ESP32_15

编译工程(编译时间有点长)

ESP32环境搭建_ESP32_16

ESP32环境搭建_ESP32_17

下载程序 选择串口下载

ESP32环境搭建_ESP32_18

ESP32环境搭建_ESP32_19

下载程序(download)

ESP32环境搭建_ESP32_20

ESP32环境搭建_ESP32_21

代码(Hello World)

/* Hello World Example

   This example code is in the Public Domain (or CC0 licensed, at your option.)

   Unless required by applicable law or agreed to in writing, this
   software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
   CONDITIONS OF ANY KIND, either express or implied.
*/
#include <stdio.h>
#include "sdkconfig.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_system.h"
#include "esp_spi_flash.h"

void app_main(void)
{
    printf("Hello world!\n");
    printf("delehub wzx 20220403!\n");
    printf("Hello ESP32 ESPIDF!\n");


    /* Print chip information */
    esp_chip_info_t chip_info;
    esp_chip_info(&chip_info);
    printf("This is %s chip with %d CPU core(s), WiFi%s%s, ",
            CONFIG_IDF_TARGET,
            chip_info.cores,
            (chip_info.features & CHIP_FEATURE_BT) ? "/BT" : "",
            (chip_info.features & CHIP_FEATURE_BLE) ? "/BLE" : "");

    printf("silicon revision %d, ", chip_info.revision);

    printf("%dMB %s flash\n", spi_flash_get_chip_size() / (1024 * 1024),
            (chip_info.features & CHIP_FEATURE_EMB_FLASH) ? "embedded" : "external");

    printf("Minimum free heap size: %d bytes\n", esp_get_minimum_free_heap_size());

    for (int i = 10; i >= 0; i--) {
        printf("Restarting in %d seconds...\n", i);
        vTaskDelay(1000 / portTICK_PERIOD_MS);
    }
    printf("Restarting now.\n");
    fflush(stdout);
    esp_restart();
}

效果

ESP32环境搭建_ESP32_22

参考

1.ESP32c3开发环境搭建 IDF V4.4离线版安装使用

2.杨奉武--001-ESP32学习开发-开发环境搭建(Windows+VSCode)