介绍
esp32 官方文档给的不是特别详细 参考多方资料 最后才完成开发 主要问题在于github下载的很慢本教程适用于ubuntu deban系统 centos系统可以参考本教程开发
参考资料
升级Python环境
我的linux环境是Deepin环境,自带的python3版本是3.7 之前曾尝试过装过ESP32的开发环境,但是因为Python3的版本太低不支持,所以搜索了教程升级更高Python3的版本。本次安装的新版本是Python3.10 最好是两者共存,如果替换掉本地的默认的Python3.7的话 自带的一些软件 如deepin的桌面可能会出错,所以本次使用兼容安装
下载Python包
下载链接:https://www.python.org/ftp/python/3.10.12/Python-3.10.12.tgz
如果网速比较慢的话,可以直接从CSDN下载,提供多种版本的python包
CSDN链接:https://download.csdn.net/download/ciqujinnian_/88741069?spm=1001.2014.3001.5503
大家帮忙CSDN下载一下 挣点积分
配置编译环境及安装Python
- 解压代码 并进入目录
tar -xzvf Python-3.10.12.tgz
cd Python-3.10.12/
- 配置环境信息
如果这一步提示缺少环境依赖的话根据所缺少的使用apt安装
./configure --prefix=/opt/apps/python3.10 --enable-optimizations
在这里–prefix=/opt/apps/python3.10 是我们在编译完成后 执行make install命令时编译好的Python3.10的库和命令所安装的位置 这里我选择/opt/app/ 目录下 大家根据自己需要更改
等待配置编译环境 配置完成后会生成Makefile
- 编译代码
make -j6
等待编译完成
- 安装Python环境
sudo make install
因为前面指定的目录是在/opt目录下 所以需要加sudo 要不然没有权限 等待安装完成,我们可以看到 该目录下已经有Python/3.10的信息了
设置环境变量
上一步安装好的python还不能直接用,需要将其配置为环境变量
- 创建软连接
sudo ln -s /opt/apps/python3.10/bin/python3.10 /usr/bin
sudo ln -s /opt/apps/python3.10/bin/python3.10-config /usr/bin
# 设置环境变量
PATH="$PATH:/opt/apps/python3.10/bin"
- 检查效果
当然也可以用软连接 将Python3指向Python3.10 不过后续会不会导致基本的环境问题还不清楚
下载esp-idf 代码
- 安装依赖
Ubuntu deban 用户
sudo apt-get install git wget flex bison gperf python3 python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
- 下载代码
由于esp32的代码在github上 国内网不是特别好 下载子模块的时候会出错 所以按照下面的方法使用国内的gitee下载esp32的代码
- 下载git tool工具
git clone https://gitee.com/EspressifSystems/esp-gitee-tools.git
下载 esp-idf代码 不包括子模块
git clone https://gitee.com/EspressifSystems/esp-idf.git
- 下载子模块
cd esp-gitee-tools/
# esp-idf为实际的esp-idf的路径
./submodule-update.sh ../esp-idf
等待完成
- 配置esp-idf
进入esp-idf的环境执行下面语句
cd esp-idf
#安装esp32的环境依赖
./install.sh esp32
等待完成 会让你执行配置环境变量的语句
执行
. ./export.sh
等待执行完成会让我们 进入工程文件 可以开始编译了
验证
进入例程 hell_world
设置目标板子为esp32
编译
下载
查看打印
cd examples/get-started/hello_world/
idf.py set-target esp32
idf.py build
idf.py flash
idf.py monitor
编译完成 等待下载
烧录成功
查看串口打印