【ESP32】-【虚拟机Linux环境搭建】

1、安装依赖的工具
乐鑫官方文档esp-idf编程指南: https://docs.espressif.com/projects/esp-idf/zh_CN/stable/get-started/index.html
2、安装依赖的工具
sudo apt-get install git wget flex bison gperf python python-pip python-setuptools cmake ninja-build ccache libffi-dev libssl-dev

3、下载ESP-IDF
使用终端命令创建工程文件夹,文件夹名称可以自己定义,例如我创建的文件夹名称为esp
mkdir -p ~/esp
cd esp
4.用指令从乐鑫官方的GitHub上下载esp-idf
git clone --recursive https://github.com.cnpmjs.org/espressif/esp-idf.git
注:下载慢???如上 .cnpmjs.org镜像后缀加速下载
如果出现下面的错误,没有请忽略
在esp-idf目录下执行:git submodule update --init --recursive
出现下图表示完成进行下一步
5、安装其他工具
除了 ESP-IDF 本身,您还需要安装 ESP-IDF 使用的各种工具,比如编译器、调试器、Python 包等!
终端进入esd-idf路径,输入如下命令
./install.sh
./install.sh执行过程中需要的python版本至少大于3.6,而系统最高的为python3.5.,接着执行以下命令可以安装python3.6
1、安装依赖包
$ sudo apt-get update
$ sudo apt-get install software-properties-common
2、添加 deadsnakes PPA 源
$ sudo add-apt-repository ppa:deadsnakes/ppa
$ sudo apt-get update
在进行 sudo apt-get update时:
如果报错:
正在读取软件包列表… 完成 W: GPG
错误:http://ppa.launchpad.net/fossfreedom/indicator-sysmonitor/ubuntu
xenial InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY 82EB5823F4FE239D W: 仓库
“http://ppa.launchpad.net/fossfreedom/indicator-sysmonitor/ubuntu
xenial InRelease” 没有数字签名。 N: 无法认证来自该源的数据,所以使用它会带来潜在风险。 N: 参见
apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。
执行如下命令
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 82EB5823F4FE239D # 这个是填写自己报错后的那一串字符!
原文链接: https://blog.csdn.net/pythonstrat/article/details/103265520
3、安装 python 3.6
$ sudo apt-get install python3.6

进入用户bin目录下,删除默认的python,并把新下载的python3.6链接到python下。
执行命令:python,出现下图,说明链接成功
cd /usr/bin
rm python
ln -s python3.6m python

接下来下载安装链接后的python3.6的pip,
执行命令:sudo apt-get install python3-pip
6.编译 烧写
终端进入esp-idf路径,输入 ./install.sh 最终结果如下表示成功,执行 . ./export.sh
返回上级目录,将hello_world复制出来并编译
出现以下信息表示编译成功,有两种烧写方式
1.虚拟机指令直接烧写
2.根据上图将需要的bin文件复制出来,按照相应的地址用乐鑫提供的IDF烧写工具进行烧写
工具地址:flash_download_tool_v3.8.5_1 https://blog.csdn.net/weixin_46664039/article/details/109660808#1AT171_27
以下将以虚拟机指令烧写进行演示
将你的esp32接入虚拟机,查看端口号进行烧写,USB需要加权限

烧写成功后进入监视界面
只有一个模块可以直接省略端口
make monitor
监视某一个端口 make /dev/ttyUSB0 monitor 视端口号而定
Hello world 成功输出!
注意:关闭虚拟机或打开多个端口可能会出现 idf.yp 命令未找到的情况
解决办法: 重新进入你的 esp-idf 目录下执行 ./install.sh