【ESP8266 RTOS开发环境搭建:乐鑫IDF + VSCode】
文章目录
前言
今天开始,我们陆续整理 乐鑫esp8266的Rtos sdk 的开发实录,很多 API接口都是修改了,导致了必须要全面学习了,正好全面看了看官网文档以及代码,顺便把笔记分享给大家,仅供参考!
到目前为止,这个esp-idf风格的工程结构以及代码风格和esp32是非常相似的,只是一些底层api接口已经修改了!但是这样非常适合我们做esp8266和esp32的,原本计划今年进阶下esp32 ai语音这块的,现在可以做下这个笔记了;因为其两者是非常相似的!
一、所需材料
二、设备图
三、 下载软件
- sdk下载
首先下载 sdk,由于github速度太泪奔了。建议到gitee 国产站点下载
git clone -b v3.4-rc https://gitee.com/EspressifSystems/ESP8266_RTOS_SDK.git
- 下载 交叉编译工具
https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-win32.zip
- vscode 开发工具
这个自行下载,太多文章了。
4.下载window下 linux仿真环境
安装包: https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_esp2020r2_toolchain-20200601.zip
四、 开发环境配置
安装工具链
因防系统重装,所以其安装的都放在工作目录E:\8266\esp-idf-2目录下(下文中的工作目录也就是此目录)
- 解压esp32_win32_msys2_environment_and_esp2020r2_toolchain-20200601.zip
得到msys32文件夹保存到工作目录 - 解压xtensa-lx106-elf-gcc8_4_0-esp-2020r3-win32.zip得到xtensa-lx106-elf文件夹把其放在工作目录\msys32\opt目录下
- 此时运行工作目录\msys32\mingw32.exe
生成工作目录\msys32\home\Administrator文件夹(这里的administrator与开机帐号相对应) - 解压SDK把ESP8266_RTOS_SDK放到工作目录\msys32\home\Administrator文件夹下
- 安装VSCode
配置
修改工作目录\msys32\etc\profile.d\esp32_toolchain.sh
export PATH="$PATH:/opt/xtensa-esp32-elf/bin"
export PATH="$PATH:/opt/xtensa-lx106-elf/bin"
export IDF_PATH="E:\8266\esp-idf-2\msys32\home\Administrator\ESP8266_RTOS_SDK"
export LANG="en_US"
五、 编译测试
样例工程配置
HelloWorld示例 下文中的SDK工作目录为工作目录\msys32\home\Administrator\ESP8266_RTOS_SDK
复制示例代码
在SDK工作目录的目录下新增MyProject文件夹
然后把SDK工作目录\examples\get-started下的hello_world文件夹复制到SDK工作目录\MyProject目录下
配置COM口
连接ESP8266设备,安装好驱动在硬件管理器里显示为COM3 运行工作目录\msys32\mingw32.exe执行
cd $IDF_PATH
cd MyProject/hello_world
python -m pip install --user -r $IDF_PATH/requirements.txt
make menuconfig
进入界面选择serial flasher config-回车 回车修改/dev/ttyusb0为COM3然后OK>exit>exit>ok
编译并烧录
然后执行make flash编译并烧录 完成后执行make monitor重置设备并接收串口信息
不出意外 编译成功后显示,至此基本环境配置成功
六、 vscode 开发配置
"terminal.integrated.shell.windows": "e:\\8266\\esp-idf-2\\msys32\\msys2_shell.cmd",
"terminal.integrated.shellArgs.windows": ["-defterm", "-mingw32", "-no-start", "-here"]
注意:需要在工作区添加修改,否则你同时使用的ESP32的话,会出现报错
1.(这步上面已做省略)修改工作目录\msys32\etc\profile.d\esp32_toolchain.sh 添加export LANG="en_US"防乱码
2.使用VS Code打开SDK工作目录文件夹
3.点设置(Ctrl+,)点击在settings.json中编辑在{}中添加
{
"terminal.integrated.shell.windows": "E:\\8266\\esp-idf-2\\msys32\\msys2_shell.cmd",
"terminal.integrated.shellArgs.windows": ["-defterm", "-mingw32", "-no-start", "-here"]
}
4.点命令面板…(Ctrl+Shift+P)输入"C/C++"选择编辑配置JSON 在这intelliSenseMode下面添加如下节点
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"E:/8266/esp-idf-2/msys32/opt/xtensa-lx106-elf/lib/gcc/xtensa-lx106-elf/5.2.0/include",
"${workspaceFolder}/components/spiffs/test_spiffs_host/sdkconfig",
"${workspaceFolder}/components/esp8266/include"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"E:/8266/esp-idf-2/msys32/home/Administrator/ESP8266_RTOS_SDK/components",
"E:/8266/esp-idf-2/msys32/opt/xtensa-lx106-elf"
]
}
}
],
"version": 4
}
这样就可以在VS中操作 make menuconfig
然后执行make flash编译并烧录
并执行make monitor重置设备并接收串口信息
七、 总结
至此我们已经成功在vscode搭建了esp8266/32的开发配置, 接下来我们就可以在vscode一边编写代码,一边配置,编译,下载拉(其实就是把msys32终端集成到vscode中),感兴趣的小伙伴赶紧尝试下吧。好了,今天的分享就先到这,记得收藏,转发,关注~ 同时欢迎大家留言对嵌入式相关内容感兴趣的话题,有机会我会专门介绍~
*玩转esp8266 ESP32 喜欢的朋友请加入我微信 ilinker32 技术咨询 *
如果我的创作对你有帮助 ,那么你的鼓励将是我创作的最大动力!非常感谢。