详细记录ESP32学习之Linux下的开发环境的搭建及遇到问题的解决

13 篇文章 1 订阅
6 篇文章 0 订阅

一、开发环境参考乐鑫开发文档


ESP-IDF编程指南——快速入门 stable(4.4)版本
我使用的开发板为果云的ESP32

 二、安装准备(Linux、Ubuntu我用的是18.04

(先安装好虚拟机、Ubuntu和Git,然后可以进行如下操作)

三、开始环境的配置

1、编译 ESP-IDF 需要以下软件包

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

2、ESP-IDF需要python3的支持,如果不是python3.7以上需要更新或者重装。

方法可以参考:Linux Ubuntu系统升级修改python至Python3.9版本,更新pip为pip3_qingeratech的博客-CSDN博客

$python --version
Python 3.9.0

 3、 下载ESP-IDF,先新建一个esp目录(这是可以命名自己喜欢的名字),再clone。

mkdir -p ~/esp
cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git

注意:github比较容易失败,如果失败需要多试几次。 

esp-idf的组件没有下载完全可以使用以下命令重新下载:

git submodule update --init --recursive

好了之后检查一下idf.py,出现idf.py:未找到命令

解决:添加环境变量

vim ~/.bashrc
export PATH=~/ESP32/esp-idf/tools:$PATH
source ~/.bashrc

四、设置工具

1、除了 ESP-IDF 本身,您还需要为支持 ESP32 的项目安装 ESP-IDF 使用的各种工具,比如编译器、调试器、Python 包等。

这是为esp32芯片同时安装工具:

cd ~/esp/esp-idf
./install.sh esp32

注:通过一次性指定多个目标,可为多个目标芯片同时安装工具,如运行 ./install.sh esp32,esp32c3,esp32s3。 通过运行 ./install.sh 或 ./install.sh all 可一次性为所有支持的目标芯片安装工具。

我是直接./install.sh all了。

如果你看到这就说明成功了:

五、配置环境变量

1、 

alias get_idf='. $HOME/esp/esp-idf/export.sh'

 配置好再:source ~/.bashrc一下,或者重启终端使得配置生效。

然后就可以用get_idf配置了。(以上命令就是用get_idf替代后面的一串)

 2、终端打开

$vim ~/.bashrc 

添加一行 ,保存退出,就可以用IDF_PATH替代后面的路径了,接下去会用到,esp-idf里面也要用的。

export IDF_PATH=~/esp/esp-idf

六、创建工程,开始编译下载。

 1、复制工程,从 esp-idf 中 examples 目录下的 get-started/hello_world 工程开始。
将 get-started/hello_world 工程复制至本地的 ~/esp 目录下:

cd ~/esp
cp -r $IDF_PATH/examples/get-started/hello_world .

2、连接设备查看端口
查看 ESP32 开发板(或外部转串口适配器)的串口设备名称,将以下命令运行两次。首先,断开开发板或适配器,首次运行以下命令;然后,连接开发板或适配器,再次运行以下命令。其中,第二次运行命令后出现的端口即是 ESP32 对应的串口:

 我的就是/dev/ttyUSB0,这需要记一下,下面下载和调试会用到。

3、配置
开始创建工程中提到的 hello_world 目录,并运行工程配置工具 menuconfig

cd ~/esp/hello_world
idf.py set-target esp32
idf.py menuconfig

哎呦我去:终于报错了,难道是一路顺风的人生不太完美?还是得风雨后才能见彩虹。

报错如下:

 第一次我给忽略了中间的错误提示,直接看了cmake failed with exit code 1。搜了一下,竟然还有人这错误。但是不适用我的。

最终定位到:

 打开文件夹一看竟然空的,不晓得什么原因。管他什么原因呢。直接下载就是了,既然git不了。

 再次执行:成功

=================分割一下,只有成功了才会有下面的界面================

打开一个新项目后,应首先设置“目标”芯片 idf.py set-target esp32。注意,此操作将清除并初始化项目之前的编译和配置(如有)。 也可以直接将“目标”配置为环境变量(此时可跳过该步骤)
如果之前的步骤都正确,则会显示下面的菜单:

hello_world 示例项目会以默认配置运行,因此可以跳过使用 menuconfig 进行项目配置这一步骤。

 4、编译工程,小激动的时刻到了。
使用以下命令,编译烧录工程:

idf.py build

 运行以上命令可以编译应用程序和所有 ESP-IDF 组件,接着生成引导加载程序、分区表和应用程序二进制文件。

看到以下界面就基本成功了:

编译好之后会提示接下去的操作:

方式一、运行以下命令,这PORT就是上面记下的端口号,波特率默认460800。

idf.py -p (PORT) [-b BAUD] flash

方式二、用提示生成的bin文件用ESPFlashDownloadTool_v3.6.3下到对应的地址即可。

我为了方便,使用方式一:

下载完成:

串口查看输出:

$idf.py -p (PORT) monitor

 esp32会自动重启。输出如下:

 总之:alias get_idf='. $HOME/esp/esp-idf/export.sh'这个需要在esp-idf目录下执行,否则在工程下直接编译会提示:

至此,已搭建好ESP32的软件开发环境,完成入门的学习,我也是刚入门搭建,如有不妥指出还望指正,希望对刚入门的小伙伴有帮助。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值