Windows开发ESP32
最近在研究EPS32,但是和STM32之类的单片机不同,国内资料大多是在arduino上的简单修改,想开发底层硬件比较困难;而官方提供的eclipse集成环境体积臃肿,并且按照教程配置完毕后,win10上不能正常make menuconfig,在网上花了很长时间查找解决方案,最后发现是兼容性问题:
改成Win7兼容就可以了。开发环境配置好后,发现Windows环境下编译确实特别慢,偶然在网上看到了在linux子系统中开发的文章,特写一篇文章记录下配置过程。
第一步,配置好linux环境
第二步,配置linux平台工具链
下载ESP-IDF编译需要的软件包和工具链,这一步按照官方教程配置就可以:Linux平台工具链的标准设置
第三步,Github上下载ESP-IDF
有三种方式获取esp-idf:
-
直接Git clone,国内速度特别慢,而且容易失败,我是从来没成功过,有VPN的应该可以
-
从码云上clone,这个速度很快,但是要分阶段clone:
修改*.gitmodules*中各子模块的url,改为你的gitee中模块位置:
例:
[submodule "components/esptool_py/esptool"] path = components/esptool_py/esptool url = https://gitee.com/leiconghe/esptool.git
最后执行:
git submodule update --init --recursive
-
直接下载官方打包好的esp-idf,包含所有的子模块:
打开后翻到最底下:
从官网下载也就是画红线的链接最快,GitHub提供的Assert速度很慢。
第四步,解压下载的压缩包到Linux子系统目录下,并配置环境变量
实测可以使用Windows系统中的解压缩工具,解压完成后重新打开Linux子系统就可以了。
通过vim ~/.profile配置环境变量:
按*‘i’是插入,光标调到最后面,添加完毕后,按‘esc’推出编辑模式,再输入‘:wq’保存并退出。编辑完后,退出Linux再重新进入,使其生效,通过printenv PATH和printenv IDF_PATH*检查路径是否存在。
第五步,检测所有配置是否正确
将例程中hello world复制出来:cp esp-idf/examples/get-started/hello_world .
,然后进入到hello_world路径中,make menuconfig,出现
说明正常,配置串口号,保存并退出后再make,若报错缺少python软件包,就按照错误pip安装就可以了。
配置VS Code
安装Remote-WSL插件:
按照Remote-WSL下面的介绍打开新窗口:
程序自动链接Ubuntu,直接打开Linux系统中工程文件夹就可以愉快的编程了。