【ESP32】交叉编译环境搭建(一)

举报
JeckXu666 发表于 2022/01/14 23:34:42 2022/01/14
【摘要】 文章目录 【ESP32】交叉编译环境搭建(一)一、开发前言二、获取乐鑫软件包三、安装 esp32 环境四、创建 esp32 工程五、编译烧入工程 【ESP32】交叉编译环境搭建(一) ...

ESP32】交叉编译环境搭建(一)

一、开发前言

最近买了块乐鑫的 ESP32 开发板,准备拿来点个灯玩玩,记录一下开发过程

请添加图片描述

二、获取乐鑫软件包

进入 linux 下,创建 esp 文件夹,用 git 把软件包拉下来:

git clone --recursive https://github.com/espressif/esp-idf.git

  
 
  • 1

克隆完成:

20211129194232

可以看到克隆后的文件夹,然后我们进入文件夹,拉取子模块

cd /home/jeck/esp/esp-idf
git submodule update --init --recursive

  
 
  • 1
  • 2

拉取完成后,进入下一步

三、安装 esp32 环境

进入到克隆文件夹下的 esp-idf 文件夹内,执行 esp32 工具安装脚本

cd /home/jeck/esp/esp-idf
./install.sh esp32

  
 
  • 1
  • 2

安装报错:提示 python 版本太低

20211129194614

这里我后面给 linux 安装一个 anaconda 工具,来安装 python 环境:具体安装方式可以参考这篇文章:Linux下安装Anaconda(64位)详细过程

安装步骤非常简单,无非就是下载安装脚本,然后执行脚本,最后配置环境变量,结束!

这里是我安装 conda 后,用 conda 为 esp 单独创建的 python 环境:(Conda 创建环境可以参考下面的文章:conda创建python环境

20211130100052

然后激活环境后再次执行工具安装指令,安装完成如下:

20211130100939

如果要给多个目标芯片同时安装工具,则运行 ./install.sh esp32,esp32c3,esp32s3。 要安装全部芯片工具,则运行 ./install.sh./install.sh all

安装完成后,下一步就是设置安装环境,在 esp-idf 目录下执行如下脚本,自动添加环境

. ./export.sh

  
 
  • 1

环境添加完成:

20211130101049

四、创建 esp32 工程

我们直接以 esp 提供的例程作为基础进行编辑:

定位到工程目录下:

cd /home/jeck/esp/esp-idf/examples/get-started/hello_world

  
 
  • 1

设置目标芯片为 esp32

idf.py set-target esp32

  
 
  • 1

20211130113619

设置完成会用如下指令打开配置项

idf.py menuconfig

  
 
  • 1

20211130113630

配置项可以配置芯片的具体变量参数包括 Wi-Fi 网络名称、密码和处理器速度等.。示例项目会以默认配置运行,因此可以跳过使用 menuconfig 进行项目配置这一步

五、编译烧入工程

配置完成工程后,下面编译工程

idf.py build

  
 
  • 1

编译完成后会生成 .bin 二进制文件:

20211130114429

编译完成通过串口,将程序下载到开发板,默认波特率 460800

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

  
 
  • 1

下载前先查询一下板子的串口:

ls /dev/tty*

  
 
  • 1

拔插看一下是哪个设备,这里我的是 ttyUSB1,这一步串口设备也可以直接在 menuconfig 里面配置!

20211130115453

下载程序:

idf.py -p /dev/ttyUSB1 flash

  
 
  • 1

下载完成:

20211130121510

注意:下载过程中肯会出现串口访问权限的问题,是因为串口只有 root 用户才能操作,普通用户要修改需要添加权限,解决方案如下:

打开规则文件

sudo vim /etc/udev/rules.d/70-ttyusb.rules

   
  
  • 1

添加权限

KERNEL=="ttyUSB[0-9]*",MODE="0666"

   
  
  • 1

保存后就重新拔插串口可以下载了

文章来源: blog.csdn.net,作者:JeckXu666,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/qq_45396672/article/details/121629771

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。