一个简单的开头
Ubuntu开发环境
- 虚拟机创建Ubuntu20.04.6 server
- 注意在安装的时候勾选SSH server
- 安装网络工具 :
- sudo apt-get install net-tools
- 输入ifconfig查看ip
- 使用MobaXterm登录
- 修改pip源为阿里云源
- 在根目录创建mkdir .pip文件夹
- 创建vim pip.conf文件
- 新增如下内容
- 修改清华源
- 首先备份系统原有的更新源配置文件:
sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup - 然后使用文本编辑器(如
sudo vim /etc/apt/sources.list)打开sources.list文件, 将其内容替换为清华的源。以下是 Ubuntu 20.04(flcal)的清华源示例: - 直接使用 su 登录root 也很方便。
使用国内源更稳定,还能加速下载。
官网如下:
ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
(如果你是别的系统,可以输入
lsb_release -a来查看当前的系统,然后根据清华源的官网的提示来更换相应地文本)
我这里是Ubuntu 20.04 LTS (focal)在vim文本编辑器下,清除所有文本需要进入命令模式(按
Esc 键)。
按shift + :键开始输入命令。
输入 %d 然后按回车键。表示全部删除。
输入然后输入i 进入编辑模式,开始输入(Ctrl+Shift+V可以粘贴)。
输入完毕后按ESC键,再按shift + :输入set noreadonly取消文件只读设置
然后shift + : 输入wq 然后回车(w为保存,q为退出)恭喜啊!!到这一步,你就成功的将软件源配置为清华源了。 可以验证一下,输入sudo apt update系统将从清华源获取软件包信息并进行更新 并且不会出现错误提示。
- 安装各种必要的工具
- sudo apt-get install git wget flex bison gperf python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0 net-tools
- 新建esp32目录
- mkdir esp32
- cd esp32
- 拉取gitee工具
- 执行gitee工具切换镜像脚本
- cd esp-gitee-tools
- ./jihu-mirror.sh set
- 上面这句命令,会将github的地址自动替换成jihulab上的镜像地址,这样就不用担心github的访问问题了
然后我们可以理直气壮的拉取github 源码了,先回到esp32目录,
- 拉取esp-idf源码
- 回到ESP32目录 cd ..
- 克隆github仓库 git clone --recursive https://github.com/espressif/esp-idf.git
--recursive:这个选项告诉 Git 在克隆仓库的同时,递归地克隆该仓库所包含的所有子模块。
- 切换esp-idf版本分支到v5.2(大版本不兼容,小版本一般兼容)
- cd esp-idf
- 切换分支到5.2版本 git checkout v5.2
- git branch 可以看一下到底切换成功了没
- 把相应的子模块切换到对应的版本 git submodule update --init --recursive
- 安装编译工具
- ../esp-gitee-tools/install.sh
- 设置临时环境变量
- source export.sh
- 添加全局环境变量
- vim ~/.profile
- 添加一行:source esp32/esp-idf/export.sh
- 也就是登录这个用户自动运行 这样就能不会退出而不能编译了
- 下载课程配套源码
- cd ~/esp32
- git clone --recursive https://gitee.com/vi-iot/esp32-board.git
- 编译
- cd esp32-board/helloworld
- idf.py build
- 如果没红色或黄色报错就成功了。
- vscode连接
- 下载ssh插件
- 配置ssh插件登录格式
- 右键在当前界面登录就OK 了。
- 通过本地vscode在Ubuntu vscode-server下载 C/C++ 、乐鑫ESP-IDF插件
- 装好后,最好重启一下VSCode,重复上述步骤登录ubuntu和打开helloworld文件夹,然后我们回到我们的helloworld工程
- 按下ctrl+shift+p,弹出搜索框,搜索ESP-IDF:Add vscode Configuration Folder,在下拉列表出现后,点击一下就可以了,这步的目的是为了把esp-idf里面的源码路径也加到我们的工程中,现在我们可以通过按着ctrl键点击函数或变量进行跳转看代码了
- 设置远程插件的C/C++扩展设置。搜索workspace ,把CPU占用调整为medium 中等。否则会占用100% CPU。
- 设置USB串口权限
- sudo usermod -aG dialout xxx xxx为用户名
- exit 退出,然后r重启一下
- 设置虚拟机USB为 USB3.1,防止烧录时提示一直正在使用
- 插入USB,在虚拟机设置连接USB到虚拟机。
- 烧录 idf.py flash
- sudo chmod 777 /dev/ttyUSB0 提升权限
- idf.py monitor 调试
- Ctrl+]退出调试
注意,esp-idf的版本记得选择v5.2 要一样的~,这个如果是Ubuntu server版本,可以用vscode连接之后 设置, 如果是Ubuntu desktop版本,可以直接在桌面 插件设置~
WIndows开发环境
vscode+ESP-IDF
不重复造轮子了,挺多的
CLion+ESP-IDF
- 下载安装离线安装包
- 基础指令
idf.py create-project 路径指令可以创建一个基础的ESP模板idf.py build dome1可以编译这个domeidf.py monitor是调试 监视
- 使用
idf.py create-project 路径创建一个demo
- 在CLion 软件添加一个新的环境,编辑环境变量(ESP32-S2)
- IDF_PATH=D:\Espressif\frameworks\esp-idf-v5.3.1;ESPPORT=COM15;IDF_TARGET=esp32
- 在PATH添加下面这段环境目录

- 编辑工具链为 D:\Espressif\espidf_source.bat
- 重新加载CMake项目
- 构建app
- 切换flash烧录

- 针对部分monitor不能用(提示 Monitor requires standard input to be attached to TTY. Try using a different terminal.错误),经查:可以使用外部模拟~

- 使用CLion 打开我们创建的demo,然后进行编译、烧录、调试。测试一下。
小技巧:第一次编译(app)之后,后续可以直接选择flash,否则会重新编译,又得等老久了。
配置开发环境挺麻烦的,其实可以直接使用
ESP-IDF 5.3 PowerShell\ESP-IDF 5.3 CMD 这些终端进行编译、烧录和调试等等后续都是根据VsCode.进行的ESP32开发。
有关LVGL其他问题,欢迎您在底部评论区留言,一起交流~
- 作者:L_Z_J
- 链接:https://www.mcoi.top/article/Post-ESP32-Development-environment-configuration
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。








