ESP32环境配置
ESP32环境配置
参考链接:
本人环境:
- ubuntu 20.04
- python3
- IDF 4.2
安装准备
按照官方脚本安装对应工具:
1 | sudo apt-get install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0 |
- 仅适用于目前IDF版本,如果IDF更新,请按照官方文档安装对应工具
获取IDF
从下面的GitHub链接获取对应版本的IDF
安装
官方步骤
直接cd到刚刚下载的IDF目录,执行./install.sh
脚本即可
1 | cd ~/esp/esp-idf |
-
安装脚本
./install.sh
会自动下载对应版本的工具链到默认目录~/.espressif
下- 可以通过预先设置系统环境变量
IDF_TOOLS_PATH
修改上述目录,并确保之后运行的每个IDF脚本均可获得该环境变量
- 可以通过预先设置系统环境变量
-
通过设置环境变量
IDF_GITHUB_ASSETS
可以使用Espressif 下载服务器,加速下载(实测有时候不如GitHub官方速度) -
./install.sh
脚本仅仅只会调用idf/tools/idf_tools.py install
进行下载当前IDF版本对应的工具链与openocd,调用idf/tools/idf_tools.py install-python-env
配置对应的虚拟环境,并不会导出IDF的环境变量-
在Ubuntu上,由于默认的python版本为python2,所以创建虚拟环境会用python2进行创建,此时会失败,所以需要删除该虚拟环境,并手动调用python3重新进行创建:
1
2rm -rf ~/.espressif/python_env/idf4.2_py2.7_env # 删除虚拟环境
python3 ./tools/idf_tools.py install-python-env # 手动重新创建
-
手动导出对应IDF版本的环境变量:
1 | source IDF目录/export.sh |
- 尝试设置环境变量
IDF_PATH
- 调用
idf/tools/idf_tools.py export
进行导出工具链的环境变量到系统PATH
中- 导出idf/tools到
PATH
中
- 导出idf/tools到
- 导出以下几个工具到
PATH
中:- idf/components/esp_tool_py/esptool
- idf/components/espcoredump
- idf/components/partition_table
- idf/components/app_update
上述
export.sh
脚本以及install.sh
脚本最后都是调用的tools/idf_tools.py
脚本,对于该脚本有如下参数:
- list:列出需要的工具链及其版本
- check:检查系统路径
PATH
下是否正确安装了工具链- export:导出该版本IDF的环境变量
- install:安装对应的工具包
- download:下载对应的工具包
- install-python-env:安装虚拟环境
- -h:帮助
自定义脚本
官方的安装步骤虽然简单,但是在Ubuntu上如果不修改默认的python版本,默认会使用python2.7,从而导致创建虚拟环境失败
所以本人使用bash脚本单独配置每个工程,在每个工程下放置如下export.sh
脚本:
1 |
|
之后,只需要:
1 | source export.sh |
即可
创建工程并编译
IDF下一起带有默认的工程,直接拷过来用即可:
1 | cp -r IDF路径/examples/get-started/hello_world ./ |
此时进入对应的工程,通过idf.py工具执行编译烧录即可:
1 | # 1 设置对应芯片架构 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 spaceman!