当前位置: 首页>前端>正文

unbuntn esp32 添加c文件指令 esp32编译环境

ESP32算是如今比较强大的物联网芯片,但是编译环境搭建的工作对于初学者来说可能并不是那么容易。官方文档给出了Windows、Linux、OSX三种平台的编译环境搭建教程,官方文档地址:http://esp-idf.readthedocs.io/en/latest/windows-setup.html,本文以官方文档为基础,讲一讲Windows平台下编译环境的搭建,然后实现使用Eclipse IDE进行开发编译。

一.编译环境的搭建

1.安装软件

首先我们需要下载MSYS2和idf配置脚本,如下图所示,将配置脚本放在C盘根目录下

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_物联网,第1张

下载地址:msys2-i686-20161025.exe windows_install_prerequisites.sh

安装MSYS2,一直默认下一步,安装完毕后,取消勾选“立即运行 MSYS2 32bit”,然后点击完成。

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_物联网_02,第2张

2.配置MSYS2

在开始菜单中找到MSYS2 MinGW 32-bit,运行。

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_编译环境_03,第3张

弹出如下窗口

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_物联网_04,第4张

然后键入以下代码开始执行配置脚本,我是将这个脚本放在C盘根目录下,如在别的路径,则也可以修改为对应的路径,注意使用正斜杠而不是反斜杠

C:/windows_install_prerequisites.sh


unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_git_05,第5张

该脚本将下载并安装ESP-IDF支持的软件包和ESP32工具链。

初始更新过程中,MSYS2会将其更新为无法再运行的状态,你会看到类似下图所示的错误,此时需要将窗口关闭,然后再次运行MSYS2 MinGW 32-bit

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_esp-idf_06,第6张

在新运行的窗口中,再次执行之前的sh脚本,等待脚本执行完毕

C:/windows_install_prerequisites.sh


unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_git_07,第7张

3.获取esp-idf

在C盘根目录下新建文件夹,名为ESP32,在MSYS2中键入以下代码

cd C:/ESP32
git clone --recursive https://github.com/espressif/esp-idf.git


4.获取示例启动工程

在MSYS2中键入以下代码

cd C:/ESP32
git clone https://github.com/espressif/esp-idf-template.git


5.配置工程

用写字板打开C:\msys32\etc\profile.d\esp32_toolchain.sh,在文本末尾加上如下代码,然后重新启动MSYS2

export IDF_PATH="C:/ESP32/esp-idf"

重新启动MSYS2后,在MSYS2中键入以下代码

cd C:/ESP32/esp-idf-template
make menuconfig

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_物联网_08,第8张

选择Serial flasher config

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_物联网_09,第9张

将Flash size修改为自己芯片对应的容量,例如4 MB,Default serial port修改为对应的串口,然后选择Save,之后Exit。

至此,在MSYS2中输入make all即可通过命令行的方式编译工程

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_编译环境_10,第10张

如图所示,即为编译成功,就可以按照其中打印的信息进行烧录了。

至此,esp-idf的工具链就已配置成功,下面介绍如何使用Eclipse IDE进行开发与编译。

二.Eclipse IDE的配置

1.安装软件

安装Eclipse IDE for C/C++ Developers

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_esp-idf_11,第11张

2.导入工程

导入选择Existing Code as Makefile Project

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_esp32_12,第12张

Existing Code Location 选择之前的esp-idf-template路径,Languages取消勾选C++,取消勾选Show only available toolchains that support this platform,然后选择Cygwin GCC

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_编译环境_13,第13张

3.配置工程属性

新工程将显示在工程资源管理器下。右键单击该项目,然后从上下文菜单中选择Properties

选择C/C++ Build选项卡,取消勾选 Use default build command,Build command键入"python ${IDF_PATH}/tools/windows/eclipse_make.py"

python ${IDF_PATH}/tools/windows/eclipse_make.py

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_编译环境_14,第14张

选择C/C++ Build下的Environment选项卡,点击Add...,输入名称BATCH_BUILD和值1,再次点击Add...,输入名称IDF_PATH。该值应为安装ESP-IDF的完整路径。应使用非反斜杠(例如我的路径是C:/ESP32/esp-idf)的转斜斜杠来指定IDF_PATH目录。编辑PATH环境变量,删除现有值并替换C:\msys32\usr\bin;C:\msys32\mingw32\bin;C:\msys32\opt\xtensa-esp32-elf\bin

C:\msys32\usr\bin;C:\msys32\mingw32\bin;C:\msys32\opt\xtensa-esp32-elf\bin


unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_git_15,第15张

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_编译环境_16,第16张

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_编译环境_17,第17张

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_git_18,第18张

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_esp-idf_19,第19张

选择C/C++ General下的Preprocessor Include Paths, Macros,etc.选项卡,单击Providers选项卡,单击CDT GCC Built-in Compiler Settings Cygwin,替换Command to get compiler specs 输入框为xtensa-esp32-elf-gcc ${FLAGS} -E -P -v -dD "${INPUTS}"

xtensa-esp32-elf-gcc ${FLAGS} -E -P -v -dD "${INPUTS}"

然后单击CDT GCC Build Output Parser,替换Compiler command pattern输入框为为xtensa-esp32-elf-(g?cc)|([gc]\+\+)|(clang)

xtensa-esp32-elf-(g?cc)|([gc]\+\+)|(clang)

然后单击Apply,然后单击OK保存退出

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_esp-idf_20,第20张

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_git_21,第21张

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_esp32_22,第22张

4.编译工程

至此,Eclipse IDE的编译环境已经配置完成,选择Project->Build Project即可进行编译,如图所示控制台输出即表明编译完成

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_esp-idf_23,第23张

三.程序烧录

程序编译完成后,需要将编译生成的文件烧录进ESP32,在这里我们使用乐鑫官方的烧录工具 

Flash 下载工具 V3.4.4(ESP8266 & ESP32):http://www.espressif.com/sites/default/files/tools/flash_download_tools_v3.4.4_0.zip

关注使用Eclipse编译控制台最后输出的一行,其中说明了下载时需要如何配置

python C:/ESP32/esp-idf/components/esptool_py/esptool/esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 115200 --before default_reset --after hard_reset write_flash -u --flash_mode dio --flash_freq 40m --flash_size detect 0x1000 C:/ESP32/esp-idf-template/build/bootloader/bootloader.bin 0x10000 C:/ESP32/esp-idf-template/build/app-template.bin 0x8000 C:/ESP32/esp-idf-template/build/partitions_singleapp.bin

晶振频率:40M

SPI MODE:DIO

flash size:按照之前menu config中选的,例如32Mbit

C:/ESP32/esp-idf-template/build/bootloader/bootloader.bin 下载地址0x1000

C:/ESP32/esp-idf-template/build/app-template.bin 下载地址0x10000

C:/ESP32/esp-idf-template/build/partitions_singleapp.bin 下载地址0x8000

按照以上分析结果配置下载工具,点击START开始下载

unbuntn esp32 添加c文件指令 esp32编译环境,unbuntn esp32 添加c文件指令 esp32编译环境_物联网_24,第24张

四.总结

到此,编译环境教程也就结束了,本文是按照esp-idf官方提供的文档进行了综合。如果有帮助的话,请点个赞哈。因为本人也是初学者,希望有什么问题的话,可以共同探讨哈。


https://www.xamrdz.com/web/2d71924039.html

相关文章: