首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

搭建 ESP32 开发环境 —— Hello World

  • 24-03-03 17:41
  • 2183
  • 8652
blog.csdn.net

这里以 Ubuntu 为例,其它系统请参考中文文档:

  • file:///home/work/esp/esp-idf-doc-zh/docs/_build/html/get-started/linux-setup.html

【安装依赖包】

整个 ESP-IDF 环境需要用到很多软件,例如 git make``python等,因此我们需要先将这些软件预装好。

sudo apt-get install git wget make libncurses-dev flex bison gperf python python-serial
  • 1

虽然需要用到这么多软件,但是只需要这样一条简单的命令,系统自动就会帮我们装好,多方便啊,这就是 Linux 对我的魅力之所在(PS:本人长期使用 Ubuntu 作为自己的工作、生活、娱乐的操作系统)。想一想,如果 windows 需要安装这么多软件,是不是烦都烦死了。

【安装工具链】

64 位操系统和 32 位操作系统所使用的工具链不相同,所以请根据你自己对系统选择对应的方法。

【64 位系统】

乐鑫是默认将工具链安装在 ~/esp/ 目录的,我们也将工具链安装到这里吧。

先创建并进入该目录:

mkdir -p ~/esp
cd ~/esp 
  • 1
  • 2

使用 wget 命令下载 64 位的工具链:

wget https://dl.espressif.com/dl/xtensa-esp32-elf-linux64-1.22.0-61-gab8375a-5.2.0.tar.gz
  • 1

将工具链解压:

tar -xzf xtensa-esp32-elf-linux64-1.22.0-61-gab8375a-5.2.0.tar.gz
### 强迫症,解压后把工具链的压缩包删掉 ###
rm xtensa-esp32-elf-linux64-1.22.0-61-gab8375a-5.2.0.tar.gz
  • 1
  • 2
  • 3

解压后的工具链位于路径~/esp/xtensa-esp32-elf下面。该目录下面的bin目录就是我们用来编译 ESP-IDF 工程所需的可执行程序。如果要使系统直接能够这些程序,需要将这个bin文件夹路径添加到系统的环境变量PATH中去。这里直接使用echo命令将其添加到脚本文件~/.bashrc中(系统每次启动刚时都会执行这个脚本)。

echo "export PATH=$PATH:$HOME/esp/xtensa-esp32-elf/bin" >> ~/.bashrc
  • 1

第一次添加后需要对该脚本执行source ~/.bashrc操作,让该脚本立即生效。今后重启系统后不需要再执行该操作。

【32 位系统】

乐鑫是默认将工具链安装在 ~/esp/ 目录的,我们也将工具链安装到这里吧。

先创建并进入该目录:

mkdir -p ~/esp
cd ~/esp 
  • 1
  • 2

使用 wget 命令下载 32 位的工具链:

wget https://dl.espressif.com/dl/xtensa-esp32-elf-linux32-1.22.0-61-gab8375a-5.2.0.tar.gz
  • 1

将工具链解压:

tar -xzf xtensa-esp32-elf-linux32-1.22.0-61-gab8375a-5.2.0.tar.gz
### 强迫症,解压后把工具链的压缩包删掉 ###
rm xtensa-esp32-elf-linux32-1.22.0-61-gab8375a-5.2.0.tar.gz
  • 1
  • 2
  • 3

解压后的工具链位于路径~/esp/xtensa-esp32-elf下面。该目录下面的bin目录就是我们用来编译 ESP-IDF 工程所需的可执行程序。如果要使系统直接能够这些程序,需要将这个bin文件夹路径添加到系统的环境变量PATH中去。这里直接使用echo命令将其添加到脚本文件~/.bashrc中(系统每次启动刚时都会执行这个脚本)。

echo "export PATH=$PATH:$HOME/esp/xtensa-esp32-elf/bin" >> ~/.bashrc
  • 1

第一次添加后需要对该脚本执行source ~/.bashrc操作,让该脚本立即生效。今后重启系统后不需要再执行该操作。

【下载ESP-IDF(即SDK)】

ESP-IDF 的全称是 Espressif IoT Development Framework(乐鑫 IoT 开发框架),即我们通常所说的 SDK,它里面提供了丰富的可供我们调用的库和API。

我们直接使用 git 进行 clone:

cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git
  • 1
  • 2

注意 clone 后面的参数--recursive,它表示递归克隆该仓库的子仓库,这是一种在开源界非常流行的做法,可以方便地对多个仓库进行控制。如果你是‘老鸟’,在 clone 时没看到这个参数(说明你还只是半老鸟,^_^),也可以使用下面的命令来手动更新该仓库的子模块:

git submodule update --init
  • 1

ESP-IDF 下载完成后,我们还需要导出环境变量IDF_PATH —— 我们今后在编译自己的工程代码时会使用这个变量来查找 ESP-IDF 所在路径。同样使用echo命令将其追加到脚本文件~/.bashrc的默认(完成后不要忘记执行source ~/.bashrc命令哦)。

echo "export IDF_PATH=~/esp/esp-idf" >> ~/.bashrc
  • 1

另外,多花几分钟看看 ESP-IDF 目录下的各文件都是干嘛的吧

【编译 Hello world】

ESP-IDF 为我们提供了丰富的 demo 程序,位于路径examples下面。我们这里先试试经典款hello world。进入 hello world 所在目录,然后编译:

cd examples/get-started/hello_world/
make
  • 1
  • 2

如果是第一次执行make命令,系统会弹出一个图形配置界面,如下图所示。

这里写图片描述

我们可以通过键盘上的tab键在下面的菜单中进行跳转。当光标跳转到菜单后,按下回车键,退出配置菜单,然后系统会自动编译 ESP-IDF 目录下的各个组件以及 hello world 目录下的源码。

编译完成后,我们可以在 hello wolrd 工程所在目录下生成一个 build 文件,用于存放编译过程中生成的临时文件以及最终可以直接烧写到开发板的.bin 文件。此外,系统还会直接在 hello world 工程所在目录生成一个配置文件 sdkconfig,它存放了我们在配置界面所配置的各种值(我们这里没有修改,所以是默认值)。

【烧写程序】

然后用 USB 将开发板与 PC 连接在一起,系统会识别到设备/dev/ttyUSB0。

如果你用的是虚拟机,需要在虚拟机上面将该设备从 win 移动到虚拟机中。

我们先修改该设备的权限,然后烧写并监视串口输出:

sudo chmod 777 /det/ttyUSB0
make flash monitor
  • 1
  • 2

当然,你也可以根据自己的喜好使用选择串口工具,例如 minicom 等。

然后就看到系统启动消息了,大功告成!!!

注:本文转载自blog.csdn.net的chunhua.jiang的文章"http://blog.csdn.net/tidyjiang/article/details/71549503"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top