ESP32学习笔记(一) 环境搭建与下载

ESP32学习笔记(一) 环境搭建与下载

作者:Nevel 博客:nevel.cnblogs.com 转载请保留出处

 

前几天刚入手了ESP32模块,趁着放假有时间,我们先把ESP32的编译环境搭建好

一.官方固件包的安装与配置.

首先,我们把ESP32模块连接上电脑,如果没有ESP32底板的话,则需连接一个usb转ttl模块,接下来我们下载好两个压缩包:

Msys32为ESP32的下载工具链和仿真环境,可以从如下网址下载

https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20160816.zip

esp32_idf为官方的固件包 可从git上同步

     

我们将msys32解压后放在c盘根目录,运行msys32 目录下的 msys2_shell.cmd

     

我们进入了一个类似命令行的页面,其实官方提供的这个下载和仿真工具其实是MSYS 因为之后的开发需要在Shell中执行一些linux下的命令 所以使用这样一个工具模拟一个unix的模拟环境。

: MSYS 是用于辅助 Windows MinGW 进行命令行开发的配套软件包 

 

接下来我们正式进入命令行操作:

1.创建文件夹,同步固件包(已经下载好固件包的可直接解压到c盘根目录,并跳过此步)

输入 mkdir esp32_idf,在c盘根目录创建 esp32_idf 文件夹,

输入 cd /c/esp32_idf/ ,将目录换到该文件夹

     

2.克隆 idf 固件库
之后输入 git clone --recursive https://github.com/espressif/esp-idf.git
这个需要一定时间,中途可能会报错,但是并没有什么影响。

     

添加编译所需的环境变量

打开 C:\msys32\etc\profile.d\esp32_toolchain.sh(使用记事本打开),添加export IDF_PATH="C:/esp32_idf/esp-idf"一行,保存并退出。

     

3.配置MENU CONFIG

该步骤中我们将进行一些编译有关的参数配置,ESP32官方提供了一个图形化配置界面,我们将使用他

     

我们先输入cd /c/esp32_idf/esp-idf/examples/01_hello_world

以为01_hello_world为根目录,对官方提供的hello world这个项目进行编译配置。

     

输入 make menuconfig ,等待界面出现

选择" Serial flasher config"并按下回车键

     

接下来选择 Default Serial Port 的时候继续按回车

输入COM15 (我的电脑为串口15,连接到其他串口修改为自己的串口号。可先使用串口助手确定ESP32所连接到的串口号)。

其他的不用修改

输入后用向右方向键选择下方的exit,回车之后再选择exit 回车后即可退出。最后还按一次回车保存设置参数。

     

4.进行编译与下载

输入 make flash 编译程序,程序编译完成后自动进入下载环节。当出现如下窗口时说明已经下载成功。然后按下复位键即可运行程序。

     

此时我们输入cat COM15 打开串口观察到:

出现我们想要看到的hello world

     

到此基本的 Linux 仿真环境和交叉编译工具链的配置已经完成

但是我们需要的不仅仅是一个编译下载工具,我们还需要一个ide才能开发

接下来的我们安装eclipse。

     

二.     Eclipse的安装与配置

安装环境:win7 x64

            我们先安装好jre(java的运行包)(jre_8u101_windows_i586_8.0.1010.13.exe)

          再从eclipse官网上下载好eclipse C/C++ 编译器的安装包(eclipse-cpp-neon-R-win32.zip),并将安装包解压到c盘根目录,打开eclipse。

 

1. 关闭欢迎界面,点击左侧project Explorer 右键选择new —>makefile project ... 那一项

     

       选择 C/C++下面的 Existing code ad Makefile Project,单击 Next

 

2.选择 Browse,然后选择 c 盘根目录自己建立的 esp32_idf 文件夹,不要选择 esp-idf目录,esp-idf 目录只有官方的 sdk 没有应用程序。

    

 

3.选择编译工具链:Cross GCC,然后选择 Finish

   

   

4.接下来需要设置工程的一些参数了。

选择 C/C++ Build 页面下的 Environment 选项卡,

A)单击 Add 按钮,在 name 栏输入 Vvalue 栏输入 1

B)再次单击 Add 按钮,在 name 栏输入 IDF_PATHvalue 输入 esp-idf 固件库的目录。C:/esp32_idf/esp-idf,分清楚,这里选择的是 idf 固件库的目录;

需要注意的是,此处是/不是\,否则编译会找不到正确的路径。

C)修改 PATH:删除原来的内容,然后输入C:\msys32\usr\bin;C:\msys32\mingw32\bin;C:\msys32\opt\xtensa-esp32-elf\bin

(前提是你按照教程解压的官方工具链文件)。

输入完成后单击 OK

   

5.选择 C/C++ Build 选项,然后将 "Use default build command"选项前面的标记取消,Build command

选项就处于可编辑的状态了,输入bash ${IDF_PATH}/tools/windows/eclipse_make.sh 然后点击OK

 

 

6.进入 "C/C++ General" -> "Preprocessor Include Paths" 选项,然后选择"Providers" 页面。

选择下拉列表中的 "CDT Cross GCC Built-in Compiler Settings"

在下方会出现一个"Command to get compiler specs" 的可输入窗口,使用 xtensa-esp32-elf-gcc 替换

${COMMAND},或者直接输入 xtensa-esp32-elf-gcc ${FLAGS} -E -P -v -dD "${INPUTS}"

   

 

7.进入 "C/C++ General" -> "Preprocessor Include Paths" 选项,然后选择"Providers" 页面。

选择下拉列表中的 " CDT GCC Build Output Parser",在 Compiler command pattern 输入框中的开始位置插入 xtensa-esp32-elf-

最后改输入框内容为 xtensa-esp32-elf-(g?cc)|([gc]\+\+)|(clang)

 

单击 OK 结束配置。

 

8. 右键 example 目录下的工程目录(01_hello_world),选择 Make Targets->creat,在弹出的对话框中输入 flash,如图所示。输入完成单击 OK

 

   

9.工作做到现在已经完成了 90%。先要暂停一下,不要着急着编译,因为你编译也会卡主 的。工程编译必须先进行 config 才行,否则无法编译通过。

这时候要打开 msys32_shell.cmd, 进入 01_hello_world 目录,输入 make menuconfig,进行串口设置(详细步骤请参考上一章 节内容)

   

10.确保你的模块已经连接到电脑上,等待上位机链接,下载程序。

 

11.就差最后一步了。。。鼠标单击 esp32_idf 文件夹,使其处于选中的状态。一定要保证

esp-idf 是被选中的!点击菜单栏的 Project->Make Targets->Build。在弹出的对话框中选择

Target 栏下的 flash,然后单击下方的 Build,此时就是等待(开始可能会一分钟左右)编译器编译完成,并自动下载。

编译完成后会在 esp-idf-template->build 目录下生成很多编译输出的文件。我们需要用的是

bootloader->bootloader.binapp-template.bin partitions_singleapp.bin 三个文件。

将这三个文件通过官方提供的下载工具下载至芯片即可

   

15、等待下载完成后按下复位键即可运行。打开串口调试助手。

 

   

选择正确的串口,波特率115200,即可在串口调试助手上看到输出信息。

16、大功告成!

   

   

第三篇 Arduino 环境配置篇

0、电脑环境:Win10x64 and Win10x86

1、基于你已经完成第一篇的工作。

2、去百度网盘下载我打包好的工具https://pan.baidu.com/s/1kVdiCYV#list/path=%2F&parentPath=%2FESP32

3、解压 03.固件库&Windows 环境目录下的arduino-nightly.zip c 盘根目录(或者其他目录

都可以)。

4、设置环境变量,如下图

 

 

5、已经完成了, 打开 Arduino.exe。配置下基本的一些设置工具-> 开发板->ESP32 Dev

Module(其他的也行只要是 ESP32 的就可以)FlashFrequency 选择 40MhzUploadSpeed 选择

921600;端口选择正确的串口;和板子相关的已经选择完了。

 

6、打开个示例代码试下吧文件->示例->WiFi 注意一定要是 Examples for ESP32 分栏下面的)

->WiFiClient(或者其他的例程也行),打开之后编译。成功通过。点击上传即可。

   

注:第二三篇部分源于网络,有删改

  

posted @ 2017-01-16 19:53  nevel  阅读(10510)  评论(3编辑  收藏  举报