ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译

ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译

因为工作需要,我这边需要使用ESP8266接入京东微联平台,所以下面的环境配置里,还多出一些关于如何在ESP8266_RTOS_SDK中编译esp-joylink的内容,不需要的请自动忽视

一、ESP8266 RTOS v3.0 环境搭建 (Windows环境)

1. 下载工具链 esp32_win32_msys2_environment_and_toolchain

​ ESP-IDF V4.0 之后默认构建系统为 CMake,但对于之前的版本,主要用的还是 GNU Make 的传统构建系统。Windows 下没有内置 “make” 环境,所以不仅要安装编译工具链,还需要安装一个兼容 GNU 的环境(例如:MSYS2)。

​ 乐鑫这边已经提供好一个Windows下的 ESP32 工具链 和 MSYS2 的合集,所以我们最初的环境搭建,要从下载这个压缩包开始: esp32_win32_msys2_environment_and_toolchain

​ 因为这个只是一个编译环境,后面需要将要编译的 SDK 工程放在这个解压后的目录中,所以可以在自己提前准备好的目录下解压

ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第1张图片

2.配置编译环境

2.1 下载 ESP8266 的编译工具链

​ 因为 esp32_win32_msys2_environment_and_toolchain 的工具链是编译 ESP32 的,而我们要编译的是 ESP8266,所以还要再单独下载给 ESP8266 的编译工具链:xtensa-lx106-elf 需要注意工具链的版本
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第2张图片

2.2 将下载好的工具链放在目录 msys/opt 下解压

​ 解压需要用 WinRAR 的管理者权限解压,网上说很多朋友在这边踩到了坑;

msys就是上面我们解压esp32_win32_msys2_environment_and_toolchain之后得到的文件夹
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第3张图片
​ 解压之后,看下 xtensa-lx106-elf 的大小
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第4张图片

2.3 下载 ESP8266_RTOS_SDK

​ 相对于esp-idf 是 ESP32 的工程环境,ESP8266_RTOS_SDK 就是 ESP8266的工程环境。比如我接下来要编译的 esp-joylink,编译它的要求就是 ESP8266_RTOS_SDK的分支必须是 rel3.2,所以我们要开始正式撸码之前,需要先下载好ESP8266的工程环境:ESP8266_RTOS_SDK

​ 克隆 ESP8266_RTOS_SDK的时候建议使用下面的指令,需要注意:使用 – recursive,来一起下载子模块

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

​ 下图是 esp-joylink 的编译下载要求,如果你不需要开发esp-joylink,只是想跑跑ESP8266的demo或者其他,那么具体的SDK的分支需要自己来定,也可以选择最新的那就直接用不用管这个分支。

//-----------------------------分割线:esp-joylink 对 ESP8266_RTOS_SDK 分支的要求--------------------------------//
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第5张图片
//------------------------------------分割线:不做esp8266接入京东的可以忽略---------------------------------------------//

2.4 运行mingw32
2.4.1 运行mingw32 ,会在home下生成一个username的目录和相关环境配置

ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第6张图片

2.5 设置 esp32_toolchain

​ 在目录 msys32/etc/profile.d 下,文本形式打开 esp32_toolchain.sh,并修改配置。需要好好配置,90%编译不成功,问题出在这里。建议打开方式,使用VS Code打开,不要用Notepad++,具体原因,不多说,有兴趣的话搜下,Notepad++ 2019年10月底做的事情。
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第7张图片

# This file was created by ESP-IDF windows_install_prerequisites.sh
# and will be overwritten if that script is run again.
export PATH="$PATH:/opt/xtensa-lx106-elf/bin"
export IDF_PATH="E:/SDK/msys32/home/username/ESP8266_RTOS_SDK"
export LANG="en_US"

注意:设置 IDF_PATH 的时候,选择我们放在home路径下的ESP8266_RTOS_SDK,把下面的粘贴到 IDF_PATH 就可以了,但需要把 “ \ ” 换成 “ / ” ,具体路径视自己实际存放 SDK 的位置而定
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第8张图片
//---------------------------分割线:将 esp-joylink 放到 ESP8266_RTOS_SDK 目录下---------------------------------//

下载 esp-joylink SDK,并放置在ESP8266_RTOS_SDK/example 下ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第9张图片
//--------------------------------------分割线:不做esp8266接入京东的可以忽略-------------------------------------------//

3.编译

​ ESP8266 RTOS v3.0的编译,都需要分两个步骤:1.make menuconfig 配置8266相关的编译内容 2.编译

3.1 make menuconfig

​ 运行mingw32,然后将路径打开到要编译的目录下,例如我需要编译的是 SDK 下的 example/get-started/project_template 工程,先打开路径到 project_template下,然后输入:make menuconfig

如果觉得cd 太多次麻烦,可以直接 cd + 把要编译的文件,直接拖拽到命令框里,回车
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第10张图片如果选在的要编译工程路径正确,输入make menuconfig 后,会出现如下界面,具体配置,这里不再赘述
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第11张图片

3.2 make -j

设置保存退出之后,输入:make -j 开始编译,因为我电脑是 i5 8核,所以输入:make -j8[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第12张图片
最后出现上面信息,则为编译成功。

二、VS Code 编译

1. VS Code下载和配置

1.1 VS Code 下载

​ 下载安装 VS Code下载地址

1.2 VS Code 配置

​ 设置VS Code配置 setting.json
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第13张图片
​ 修改 VS Code 终端为 msys32 的cmd
ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第14张图片

    "terminal.integrated.shell.windows": "E:\\username\\SDK\\msys32\\msys2_shell.cmd",
    "terminal.integrated.shellArgs.windows": [
        "-defterm",
        "-mingw32",
        "-no-start",
        "-here"
    ],

其中,msys2_shell.cmd 路径根据自己路径修改注意是“ \\ ”,保存退出

2. VS Code编译

ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第15张图片

FAQ

​ 简单介绍下我遇到的一个大坑 : (

​ 在确认好自己环境配置ok之后,编译,会出现下面这种报错

python.exe -m pip install --user -r D:/xxx/msys32/home/username/ESP8266_RTOS_SDK/requirements.txt
check_python_dependencies

ESP8266 RTOS v3.0 环境搭建 和 VS Code 编译_第16张图片
查遍网上,都没有适合我的解决办法,后来侥幸发现可能是两个问题导致的,解决方法如下:

  1. 确保 esp32_win32_msys2_environment_and_toolchain是最新的… 我之前在乐鑫官网上的一个链接的版本是 20181001,但后来在另一个中文网站下,发现最新的版本是20190611…(浪费了我n天时间)

  2. 下载ESP8266_RTOS_SDK 下载的时候,把对应的子模块都下载了,所以克隆SDK的时候使用命令

    git clone --recursive url
    

最后,愉快的撸码吧~

参考文章:
1.https://docs.espressif.com/projects/esp-idf/zh_CN/latest/get-started-legacy/index.html
2.https://blog.csdn.net/QianBiDeJiYi/article/details/96451910
​3.https://docs.espressif.com/projects/esp-idf/zh_CN/latest/get-started/windows-setup.html

你可能感兴趣的:(Wi-Fi)