• ESP32学习笔记(50)——搭建环境、编译烧写(Windows+Espressif-IDE)



    VS Code 环境搭建参看 ESP32学习笔记(1)——搭建环境、编译烧写(Windows+VS Code)


    一、搭建环境

    1.1 官方资料

    ESP-IDF 编程指南

    1.2 下载Espressif-IDE安装器

    官网下载:https://dl.espressif.cn/dl/esp-idf/?idf=4.4

    百度网盘:https://pan.baidu.com/s/1cXP7lRmmohUu-PkNdxYHVw?pwd=g33x
    提取码:g33x

    • 打开 espressif-ide-setup-espressif-ide-2.5.0-with-esp-idf-4.4.exe

    • 安装前系统检测,如果需要应用修复,则点击应用修复完成后点击下一步

    • 选择安装目标位置
      不要安装在带有空格的路径

    • 选择安装组件

    • 准备安装

    • 安装完成

    桌面出现 ESP-IDF 4.4 CMDESP-IDF 4.4 PowerShell

    1.3 设置环境变量

    打开 ESP-IDF 4.4 PowerShellESP-IDF 4.4 CMD 即自动完成环境变量设置


    或者在当下命令提示符窗口手动输入

    %userprofile%\esp\esp-idf\export.bat
    
    • 1

    1.4 更换ESP-IDF版本(可跳过)

    官方Github代码库:https://github.com/espressif/esp-idf/tree/master

    下载主分支 master 或其他稳定版

    百度网盘:https://pan.baidu.com/s/133YOGC9KzbmUYLAbOrplZQ?pwd=u5n1 提取码:u5n1

    解压到 Espressif\frameworks 路径下

    1.5 创建工程

    • 打开 Espressif-IDE
    • 创建IDF工程
    • 点击 Next,选择模板

    二、编译

    2.1 使用Eclipse编译

    1. 切换对应芯片类型和项目
    2. 选择ESP目标

    3. 查看串口号
      开发板连接电脑。设备管理器查看开发板的端口号 COM22
    4. 点击编译

    2.2 使用ESP-IDF CMD编译

    1. 打开 ESP-IDF 4.4 CMD
    2. 进入例程目录:
    cd examples\get-started\hello_world
    
    • 1
    1. 进行编译
    idf.py build
    
    • 1
    1. 编译完成

    三、烧写

    3.1 使用Eclipse烧写

    1. 点击烧录

      这将编译应用程序和所有 ESP_IDF 组件,生成引导加载程序,分区表和应用程序二进制文件,并将这些二进制文件闪存到 ESP32 板上。
    [1/5] cmd.exe /C "cd /D D:\Espressif\frameworks\esp-idf-v4.4\workspace\hello_world\build\esp-idf\esptool_py && python D:/Espressif/frameworks/esp-idf-v4.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app D:/Espressif/frameworks/esp-idf-v4.4/workspace/hello_world/build/partition_table/partition-table.bin D:/Espressif/frameworks/esp-idf-v4.4/workspace/hello_world/build/hello_world.bin"
    hello_world.bin binary size 0x29740 bytes. Smallest app partition is 0x100000 bytes. 0xd68c0 bytes (84%) free.
    [2/5] Performing build step for 'bootloader'
    [1/1] cmd.exe /C "cd /D D:\Espressif\frameworks\esp-idf-v4.4\workspace\hello_world\build\bootloader\esp-idf\esptool_py && python D:/Espressif/frameworks/esp-idf-v4.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x1000 D:/Espressif/frameworks/esp-idf-v4.4/workspace/hello_world/build/bootloader/bootloader.bin"
    Bootloader binary size 0x62c0 bytes. 0xd40 bytes (12%) free.
    [2/3] cmd.exe /C "cd /D D:\Espressif\frameworks\esp-idf-v4.4\components\esptool_py && D:\Espressif\tools\cmake\3.20.3\bin\cmake.exe -D IDF_PATH="D:/Espressif/frameworks/esp-idf-v4.4" -D SERIAL_TOOL="python D:/Espressif/frameworks/esp-idf-v4.4/components/esptool_py/esptool/esptool.py --chip esp32" -D SERIAL_TOOL_ARGS="--before=default_reset --after=hard_reset write_flash @flash_args" -D WORKING_DIRECTORY="D:/Espressif/frameworks/esp-idf-v4.4/workspace/hello_world/build" -P D:/Espressif/frameworks/esp-idf-v4.4/components/esptool_py/run_serial_tool.cmake"
    esptool.py esp32 -p COM4 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 2MB 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin 0x8000 partition_table/partition-table.bin
    esptool.py v3.2-dev
    Serial port COM4
    Connecting......
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    我用的是 ESP32-LyraT V4.3 开发板,出现Connecting的时候按住 Boot 键,再按一下 RST 键,进入烧录模式。

    然后,出现了超时,一直烧录不成功:

    然后我到 CP210x USB to UART Bridge VCP Drivers 上,下载安装驱动 CP210x Universal Windows Driver v10.1.10 之后就能下载了

    1. 下载完成

    1. 串口调试
      点击打开调试窗口

      查看打印:

    3.2 使用ESP-IDF CMD烧写

    1. 烧录前先配置模组的flash大小:
      输入命令 idf.py menuconfig 打开配置界面

    进入Serial flasher config,按需将 Flash size 改为自己的大小。比较常用的两个模组:安信可ESP-32S乐鑫ESP32-WROOM-32,flash 都是 4MB。连续按 Esc 退出,按 s 保存。

    1. 查看端口号
      开发板连接电脑。设备管理器查看开发板的端口号 COM22

    2. 烧录执行

    idf.py -p PORT flash
    
    • 1

    其中PORT是连接开发板的端口。如COM22,命令为idf.py -p COM22 flash

    这将编译应用程序和所有 ESP_IDF 组件,生成引导加载程序,分区表和应用程序二进制文件,并将这些二进制文件闪存到 ESP32 板上。

    esptool.py v3.0
    Generated C:/Users/neldtv/esp/esp-idf/examples/get-started/hello_world/build/bootloader/bootloader.bin
    [783/784] Generating binary image from built executable
    esptool.py v3.0
    Generated C:/Users/neldtv/esp/esp-idf/examples/get-started/hello_world/build/hello-world.bin
    [783/784] cmd.exe /C "cd /D C:\Users\neldtv\esp\esp-idf\co...eldtv/esp/esp-idf/components/esptool_py/run_esptool.cmake"
    esptool.py --chip esp32 -p COM22 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 4MB 0x8000 partition_table/partition-table.bin 0x1000 bootloader/bootloader.bin 0x10000 hello-world.bin
    esptool.py v3.0
    Serial port COM22
    Connecting........_____....._____....._____....._____....._____....._____....._____
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    1. 下载完成

    1. 串口调试
    idf.py -p PORT monitor
    
    • 1

    其中PORT是连接开发板的端口。如COM22,命令为idf.py -p COM22 monitor

    3.3 烧录工具烧写

    flash_download_tool_v3.8.5
    链接:https://www.espressif.com/zh-hans/support/download/other-tools
    然后按照 idf.py -p COM22 monitor 中提示的文件和烧录地址

    四、常用命令(ESP-IDF CMD中使用)

    功能命令
    配置界面idf.py menuconfig
    清理工程idf.py clean
    编译idf.py build
    烧录下载idf.py -p PORT flash PORT改成实际COM口
    监视端口idf.py -p PORT monitor PORT改成实际COM口
    擦除整个flash并烧录下载idf.py (-p PORT) erase_flash PORT改成实际COM口
    编译+烧录+监视idf.py (-p PORT) build flash monitor PORT改成实际COM口

    • 由 Leung 写于 2022 年 7 月 28 日

  • 相关阅读:
    【LangChain学习之旅】—(11) 记忆:通过Memory记住用户上次的对话细节
    Spring Boot的Web开发之Thymeleaf模板引擎的解析及使用(Thymeleaf的基础语法以及常用属性)
    微服务学习(六):实现SSH通信
    全网最全JAVA面试八股文,终于整理完了
    2023年【公路水运工程施工企业安全生产管理人员】新版试题及公路水运工程施工企业安全生产管理人员模拟试题
    Fasttext解读(1)
    网络安全渗透测试——名词解释
    ThreeJS-3D教学十-有宽度的line
    机器学习One-Hot编码
    使用推测解码 (Speculative Decoding) 使 Whisper 实现 2 倍的推理加速
  • 原文地址:https://blog.csdn.net/qq_36347513/article/details/126041087