2020.2最新Win10x64+Eclipse/VSCODE+ESP8266_RTOS_SDK3.0开发环境搭建指导
一、在win10环境下搭建ESP8266RTOS3.0开发环境
由于项目要用到ESP8266,网上找了很多很多的各种杂七杂八的教程,但是现在更新节奏很快,网上很多安装教程都会被淘汰掉,我走完所有的坑,搭建完整个开发环境整整花了一周时间,真的是各种坑啊,但是你只要根据我的教程一步步来,别出错,保证没有问题。
当然最好还是按官方指导环境搭建流程(英文)来搭建,保证实时都是最新的教程,估计过段时间我的这个版本也会被淘汰掉。
- 标题官方教程地址:
https://docs.espressif.com/projects/esp8266-rtos-sdk/en/latest/get-started/windows-setup.html
里面有三种开发环境搭建详细流程,英文好的可以按官方途径来进行
好了,我的教程正式开始!
1、下载所需仿真环境msys32(官网有提供,下载速度还可以直接走官方途径)
PS:懒人可以下载我的百度云压缩包,解压就能用(在文档末尾)
下载地址:
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20181001.zip
下载完后解压到C盘根目录即可。
2、下载工具链,也是官方提供,因为我们是最新的所以也用新的工具链下载5.20版本
下载地址:https://dl.espressif.com/dl/xtensa-lx106-elf-win32-1.22.0-100-ge567ec7-5.2.0.zip
这个下载完为了防止丢失,建议放到下面这个目录里,因为这里原先有个esp32的包或许以后开发用得到,实测不能删除esp32的文件夹,因为执行编译的时候会调用里面的文件。
然后开始获取ESP8266_RTOS_SDK,官方提供的是git clone方法,这个我尝试多次,没有v*n所以下载速度很慢,且下载到14%就不会动了,很浪费时间,直接放弃,也可以用国内码云转下载,但是必须用git clone 方法下载。
官方给的是方法是:
输入:git clone --recursive https://github.com/espressif/ESP8266_RTOS_SDK.git
不用瞎折腾了,直接下载我的就好了,码云转录也会丢文件,我这个是把丢的2个文件都放进去了,直接走链接。
链接:https://pan.baidu.com/s/1_Iv0uRj8DPd1HBsqkXnARw
提取码:egav
把下载下来的文件随便找个地方放着,解压,最好全英文目录
我这边放在D:\RTOS\ESP8266_RTOS_SDK-master
这里你只要做好环境变量设置就行,放那里没有讲究
PS:环境变量设置好要记得重启才生效
3、开始搭建开发环境工作
打开第一步下载的mingw32.exe程序
进入后显示
这里需要注意的是,你如果安装过其他软件,比如我这里安装过Allegro 16.6,所以环境变量里的HOME地址不一定是C盘根目录,问题不大,这个你只要知道在哪就行,不用改。
这个就是官方有可能会叫你在当前目录下创建一个esp文件夹但是你找不到在哪里的情况。
编译前需要注意环境变量
输入临时环境变量设置,我是这样的,这里可以根据自己情况设置
输入:export IDF_PATH=“D:/RTOS/ESP8266_RTOS_SDK-master”
设置正确后
输入:cd $IDF_PATH
会进入到我们设置的地址
输入:cd examples/get-started/hello_world
进入示例目录hello_world
这个方法其实主要用的还是Python来编译,所以需要安装SDK所需的对应python环境,设置好IDE_PATH环境后
输入:python -m pip install --user -r $IDF_PATH/requirements.txt
系统会自动下载和安装所需的编译环境
注意:Win10需要提前安装好python环境。
编译前需要先设置COM口
输入make menuconfig
有可能会出现找不到xtensa-lx106-elf-gcc:命令未找到的提示,后面解决
这里只要改COM口就行,其他都不用改,你插上8266模块后看下你的COM口是几这里就改成几,注意前面有个/号
方向键右移到exit会提示保存然后再退出即可
选择yes,后返回msys32.
这里需要解决下刚刚xtensa-lx106-elf-gcc:命令未找到,的问题
make:xtensa-lx106-elf-gcc:命令未找到
expr: syntax error: unexpected argument “5.2.0”
输入:export PATH=/c/msys32/opt/xtensa-lx106-elf/bin:¥PATH
注意这里要修改¥为下面那个值,不知道为什么这里输入下面的号会出现乱码
设置toolchain的环境变量,下图是正确的make menuconfig输出结果
确保所有输出都正确后就可以make flash了
第一次make flash有点久~~~~~~很久很久十来分钟吧,超级慢
打印了一大堆信息后,终于成功了,搞了整整一周啊,终于搞好了。
成功打印hello world!就是表示成功了。
4、清除builds目录下的文件
输入:make clean
5、 串口打印信息
输入 cat /dev/ttyS2 shell页面将会打印串口输出的信息
查看COM口对应ttys口具体方法
输入 ls /dev/tty*
查看shell环境下串口的设备名称,我电脑经测试知道COM4对应了/dev/ttyS3。(测试方法:不断的使用cat命令测试看那个串口设备有输出信息)。
输入make monitor也可以查看串口输出信息
6、 完美,搞定!!!!!!
二、搭建eclipse开发环境
完成以上步骤后,后续只要下载正确的eclipse和java开发环境就行了
这里我提供我的安装包,包你能用
jdk-8u181-windows-x64
eclipse-cpp-2019-12-R-win32-x86_64
主要注意事项是:eclipse是C++版本,JDK是1.8的,我下载的是最新的,最终测试通过。
百度云地址:
链接:https://pan.baidu.com/s/12AMkqmKGmb1US58dyFL18A
提取码:crrq
1、安装完后File——import
选择 C/C++下面的 Existing code ad Makefile Project,单击 Next
2、选择 Browse,然后选择自己之前下载的ESP8266_RTOS_SDK-master 文件夹,下面toolchain选择Cross GCC,然后点击finish。
3、设置整个项目相关信息,选中项目右键最后一行有个Properties。
4、选择 C/C++ Build 页面下的 Environment 选项卡,
A)单击 Add 按钮,在 name 栏输入 V,value 栏输入 1;
B)再次单击 Add 按钮,在 name 栏输入 IDF_PATH,value 输入ESP8266_RTOS_SDK固件库的目录。
需要注意的是,此处是/不 是\,否则编译会找不到正确的路径。
因此我的地址是:D:/RTOS/ESP8266_RTOS_SDK-master
C)修改PATH:删除原来的内容,然后输入
C:\msys32\usr\bin;C:\msys32\mingw32\bin;C:\msys32\opt\xtensa-lx106-elf\bin
这里需要注意的是最后的C:\msys32\opt\xtensa-lx106-elf\bin,整个是根据你自己下载的工具链地址来的
5、根据自己情况设置完后,进入 “C/C++ General” -> “Preprocessor Include Paths,Macros etc” 选项,然后选择"Providers" 页面。
选择下拉列表中的 “CDT Cross GCC Built-in Compiler Settings”,在下方会出现一个
“Command to get compiler specs"的可输入窗口,使用 xtensa-lx106-elf-gcc 替换
${COMMAND},或者直接输入 xtensa-lx106-elf-gcc {INPUTS}”。
6、进入 “C/C++ General” -> “Preprocessor Include Paths,Macros etc” 选项,然后选择"Providers" 页 面。选择下拉列表中的 " CDT GCC Build Output Parser",在 Compiler command pattern 输入框中的开始位置插入 xtensa-lx106-elf- 。
最后改输入框内容为 xtensa-lx106-elf-(g?cc)|([gc]++)|(clang)
环境配置终于完成了
7、现在创建编译规则,选中示例程序,hello_world,右键Build Targets,点击Create…输入flash然后单击OK。
这个时候还不能编译成功,需要到一开始下载的msys32进入hello_world的目录下执行以下make menuconfig语句,主要是设置一下下载端口就行,该端口方式上面讲过了,就不再赘述了。
8、然后就是执行下载程序了,选中hello_world文件夹右键,Build Targets——Build…——单击Build就行。
如果正常就会显示以下内容
9、这样就是表示编译下载成功了,用eclipse的好处就是有了个好的代码管理程序,一个比较好的写代码环境。
三、搭建VSCODE开发环境
在VSCODE+ESP8266_RTOS_3.0开发环境搭建
注意:在第一步基于WIN10的搭建完成后才能执行这步操作
1、修改环境变量
我的文件位置在C:\msys32\etc\profile.d\esp32_toolchain.sh
用普通的文本编辑器打开后注释掉原先的esp32的环境变量,套上自己的环境变量,再增加一个IDF_PATH的环境变量,再增加一句语言设置,为了防止后期make menuconfig出现乱码。
export PATH="$PATH:/opt/xtensa-lx106-elf/bin"
export IDF_PATH=“D:/RTOS/ESP8266_RTOS_SDK-master”
export LANG=“en_US”
2、修改VSCODE的配置文件
在VSCODE左下角打开设置
然后随便找到一个“在settings.json中编辑”点击
添加两句话
“terminal.integrated.shell.windows”:“C:\msys32\msys2_shell.cmd”,
“terminal.integrated.shellArgs.windows”: ["-defterm", “-mingw32”, “-no-start”, “-here”]
注意第一句话后面要用逗号结尾,第一句话需要修改自己电脑的msys2_shell.cmd地址,别搞错了,其他不用管,保存退出就行。
3、添加项目文件夹到VSCODE里面
点击左侧添加文件夹
把整个项目都导入进来
4、然后找到我们的例程,hello_world,右键选择在终端中打开
输入命令行make menuconfig后显示我们熟悉的页面后就可以输入make flash正常烧录程序了
5、好了后面就按正常的编译下载流程来操作吧,教程结束。撒花~~~~~
懒人安装包:
链接:https://pan.baidu.com/s/1K7klD9OMg55vtn6eBHrYTg
提取码:5mff
如果觉得这篇文章对你有所帮助的话,且你高兴的话,可以请我喝一杯奶茶哦,谢谢你哈