ESP32开发【2】:Linux环境(ubuntu)搭建与工程使用

目录

一、安装步骤

1、工具下载安装

2、获取ESP-IDF

3、设置工具

4、设置环境变量

二、工程配置与编译

1、创建工程

2、连接设备

3、配置

4、编译工程

5、烧录到设备

6、添加监视器


一、安装步骤

1、工具下载安装

下载安装软件包:

sudo apt-get install git wget libncurses-dev flex bison gperf python python-pip python-setuptools cmake ninja-build ccache libffi-dev libssl-dev

设置 Ubuntu 默认使用 Python 3:

sudo apt-get install python3 python3-pip python3-setuptools

设置 Python 3 为默认编译器:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10

2、获取ESP-IDF

打开终端,新建 esp文件夹,将ESP-IDF克隆到此目录下:

mkdir esp
git clone -b release/v4.0 --recursive https://github.com/espressif/esp-idf.git

3、设置工具

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

4、设置环境变量

执行如下命令,命令开始的 “.” 与路径之间应有一个空格!但这样每次在重启系统后又得重新设置

. $HOME/esp/esp-idf/export.sh

也可以将这行代码增加至.profile 或 .bash_profile 脚本中,这样就可以在任何命令窗口使用 ESP-IDF 工具了

cd ~ //进入跟目录下
geidt .profile //编辑 .profile文件
export IDF_PATH=/home/denghengli/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 .

或是直接使用example目录下的工程,无需进行复制

2、连接设备

将ESP32开发板连接到PC,并查看开发板使用的串口(Linux下为 /dev/tty开始)

3、配置

1、设置目标芯片(不需要,默认会是esp32)

ESP-IDF 支持多款芯片,它们通过在软件中使用不同的 “目标” (target) 名进行区分,具体对应关系如下:

  • esp32 — 适用于 ESP32-D0WD、ESP32-D2WD、ESP32-S0WD (ESP-SOLO)、ESP32-U4WDH、ESP32-PICO-D4
  • esp32s2— 适用于 ESP32-S2

所以在构建项目前,需要设置目标芯片。参考链接

idf.py set-target {IDF_TARGET} 例如:idf.py set-target esp32

2、配置工程

第一步:进入到要编译的 example目录下,进入 “hello_world”

第二步:输入 idf.py menuconfig

4、编译工程

输入 idf.py build

5、烧录到设备

(1)输入 idf.py -p PORT [-b BAUD]  PORT 替换为 ESP32 开发板的串口名称。或者

(2)输入 idf.py -p PORT [-b BAUD] flash PORT 替换为 ESP32 开发板的串口名称,完成 工程编译 和 烧录,就不用再执行 idf.py build

6、添加监视器

输入  idf.py -p PORT monitor 命令,监视 “hello_world” 的运行情况,使用快捷键 Ctrl+],可以退出 IDF 监视器。也可以运行以下命令,一次性执行构建、烧录和监视过程

idf.py -p PORT flash monitor

【权限问题】:

出现 Failed to open port /dev/ttyUSB0 错误消息。此时,可以将当前用户增加至 :ref:Linux Dialout 组 <linux-dialout-group>。

方法一:执行如下指令,将用户添加至dialout组,永久生效。如果不成功的话可以试用第二种方法

sudo usermod -aG dialout denghengli

方法二:给 /dev/tty/USB0添加权限,但是关闭后会失效,下次需要重新添加

sudo chmod 777 /dev/ttyUSB0 

猜你喜欢

转载自blog.csdn.net/m0_37845735/article/details/107095243