图文手把手教程:windows下ESP8266_RTOS_SDK(全新IDF框架)开发环境搭建和HelloWorld显示(使用VSCode编程)

图文手把手教程:windows下ESP8266_RTOS_SDK(全新IDF框架)开发环境搭建和HelloWorld显示(使用VSCode编程)

第一步:下载乐鑫官方Windows 多合一工具链和 MSYS2 压缩包文件。

下载地址:https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started-legacy/windows-setup.html

1.1打开下载地址,下载如下图所示的工具链。

1.2下载完毕后,解压到D盘中(也可以是其他盘,但路径最好不要有中文),由于名字有些长,

故将文件夹 “esp32_win32_msys2_environment_and_esp2020r2_toolchain-20200601”重命名为“esp32_win32_toolchain_2020”。

 

第二步:下载ESP8266_RTOS_SDK。

2.1打开文件夹esp32_win32_toolchain_2020-> msys32->双击运行 mingw32.exe,如下图所示。

2.2在弹出命令窗口输入下载乐鑫官方ESP8266_RTOS_SDK命令,按回车进行下载。

注意:前提是安装了git工具,git工具下载地址:https://git-scm.com/downloads/

git clone --recursive https://github.com/espressif/ESP8266_RTOS_SDK.git

由于家里的网络下载比较慢,故在公司将ESP8266_RTOS_SDK进行了下载,在桌面右击->选择Git Bash Here,如下图所示。

 

 

 

 

 

2.3注意事项:

1)确保子模块全部下载完毕,如果子模块(例如json)没有下载全,则编译时会报错。

2)在路径D:\esp32_win32_toolchain_2020\msys32,运行mingw32.exe下载的ESP8266_RTOS_SDK,

其存放的路径在D:\esp32_win32_toolchain_2020\msys32\home\felix下,其中felix是本人的用户名,不同电脑用户名不同,没有用户名也没有问题。

3)由于本人在桌面下载的ESP8266_RTOS_SDK,所以需要手动移动到路径

D:\ esp32_win32_toolchain_2020\msys32\home\felix下,如下图所示。

第三步:下载ESP8266编译工具链。

下载地址:https://github.com/espressif/ESP8266_RTOS_SDK

3.1打开下载地址,拉到中间位置,如下图所示,根据SDK的版本号下载对应的工具链,如果工具链不对应,则编译会报错。

 

3.2这里使用新版工具链,将其解压后,如图所示。

3.3复制编译工具链xtensa-lx106-elf到路径

D:\esp32_win32_toolchain_2020\msys32\opt下。

 

3.4指定编译路径。

打开路径D:\esp32_win32_toolchain_2020\msys32\etc\profile.d,找到esp32_toolchain.sh文件,右击,使用Notepad++打开。

 

修改编译路径,两个参数:PATH和IDF_PATH。

export PATH="$PATH:/opt/xtensa-lx106-elf/bin"

export IDF_PATH=" D:/esp32_win32_toolchain_2020/msys32/home/felix/ESP8266_RTOS_SDK"

其中IDF_PATH视自己的SDK路径而定,复制电脑的SDK路径后,需要将反斜杠“\”改为正斜杠“/”。

 

修改后的编译路径,如下图所示。

 

3.5)验证编译路径PATH和IDF_PATH。

   打开路径D:\esp32_win32_toolchain_2020\msys32,找到编译命令工具 mingw32.exe双击运行,

   输入命令:echo $PATH,接着输入命令:echo $IDF_PATH,如下图所显示结果,则证明路径是正确的。

第四步:运行例程examples,显示HelloWorld。

4.1ESP8266_RTOS_SDK目录下新建一个文件夹,用于存放自己的工程,例如新建my_project文件夹。

注意:ESP-IDF框架(即ESP8266_RTOS_SDK)与项目是分离的,所以my_project文件夹不一定要放在ESP8266_RTOS_SDK根目录下,

可以放在任何位置,只是编译时要定位到my_project文件夹下,所以只要ESP8266_RTOS_SDK存放路径是不变的,则IDF_PATH路径不需要改来改去。

 

4.2将ESP8266_RTOS_SDK\examples\get-started中的hello_world例程复制到my_project文件夹下。

 

4.3双击运行编译命令工具mingw32.exe。

 

4.4将编译工具定位到hello_world工程文件夹,如下图所示。

一些简单的命令 ,cd:定位到某个目录下,clear:清屏,ls:列出清单。

4.5配置程序烧录串口,输入命令make menuconfig,然后等待跳出配置界面,如下图所示。

 

修改完后,按退出并保存即可。

4.6编译并烧录工程,输入命令make flash,第一次编译时间较长,需要耐心等待。

  注意:如果编译过程中出现错误“没有规则可制定目标…”则需要检查SDK的路径是否配置正确。

 

4.7 安信可NodeMCU-ESP8266开发板的购买(免费打广告)。

   购买链接:https://item.taobao.com/item.htm?spm=a1z10.5-c-s.w4002-16491566042.13.1b378114yOHS9z&id=543816073624

   

4.8开发板要下载程序,电脑端需要安装CP210x串口驱动程序。

  下载地址:https://cn.silabs.com/developers/usb-to-uart-bridge-vcp-drivers

   打开下载地址,选择CP210x_Windows_Drivers进行下载,如下图所示。

 

4.9打开监听串口并显示hello world,输入命令make monitor

 

4.10使用SSCOM串口调试助手显示hello world。

例程默认的波特率是74880,所以串口助手需要设置波特率为74880,如果波特率不对会显示乱码。

 

4.11命令工具mingw32.exe使用的一些常用命令:

1)配置工程命令:make menuconfig

2)编译工程命令:make

3)烧录固件命令:make flash

4)打开串口命令:make monitor

5)编译/烧录/打开串口命令:make flash monitor

6)命令窗口不断的出现MCU重启指令,则按ctrl+c退出命令

 

第五步:使用VSCode编辑和引用工具链shell命令编译代码。

5.1下载VSCode,下载地址:https://code.visualstudio.com/

打开网址,选择windows版本的VSCode进行下载即可,如下图所示。

5.2安装VSCode,安装完毕后,打开VSCode,文件->打开文件夹->选择ESP8266_RTOS_SDK文件夹进行打开,

或者直接将ESP8266_RTOS_SDK文件夹拖至VSCode中打开,打开后如下图所示。

5.3将工具链shell嵌入到VSCode的集成终端。

  1)点击左下角的设置图标->命令面板,或者键盘按快捷键ctrl+shift+P,打开命令搜索栏,然后输入setting,选择“首选项:打开工作区设置(JSON)”。

2)选择后,可以看到ESP8266_RTOS_SDK文件夹下面生成一个vscode的settings.json文件。

3)复制以下代码到setting.json中,并按ctrl+s保存,注意修改自己的路径。

//D:\esp32_win32_toolchain_2020\msys32

"terminal.integrated.shell.windows": "D:\\esp32_win32_toolchain_2020\\msys32\\msys2_shell.cmd",

  "terminal.integrated.shellArgs.windows": ["-defterm", "-mingw32", "-no-start", "-here"]

4)鼠标左键选中工程my_project\hello_world,然后右击,选择“在集成终端中打开”

5)在终端中输入配置命令make menuconfig,发现报错,原因是终端窗口太小,无法显示配置窗口,所以需要调大。

6)将终端窗口适当调大后,再输入配置命令make menuconfig,发现有乱码,解决办法,

  编辑\etc\profile.d\esp32_toolchain.sh,插入代码export LANG="en_US"

7)再次输入配置命令make menuconfig,虽然没有了乱码,但发现终端的支持不是很好,还是建议用回mingw32.exe命令配置较好。

 

8)在VSCode终端中编译工程,输入命令make,编译和烧录固件,输入命令make flash,打开串口,输入命令make monitor

一些常用命令如下:

1)配置工程命令:make menuconfig

2)编译工程命令:make

3)烧录固件命令:make flash

4)打开串口命令:make monitor

5)编译/烧录/打开串口命令:make flash monitor

6)清除已编译的工程:make clean

7)命令窗口不断的出现MCU重启指令,则按ctrl+c退出命令

 

9)在VSCode中实现工程的头文件、函数、变量等通过右键转到定义、转到声明等。

安装“c/c++”插件,左侧菜单,点击扩展->搜索栏中输入”C”->选择C/C++插件进行安装,安装”C/C++”插件后发现右键时出现了”转到定义”、”转到声明”等功能,就能实现跳转了,如下图所示。

注意:VSCODE中的PlatformIO平台暂时不支持ESP8266的新框架IDF(IoT  Development  Framework),仅支持Arduino框架、ESP8266_RTOS_SDK框架、ESP8266_Non-OS SD框架。

参考来源:

  1. https://blog.csdn.net/xh870189248/article/details/81382279
  2. https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started-legacy/windows-setup.html

猜你喜欢

转载自blog.csdn.net/felix_tao/article/details/112452160