现在开始玩esp32了,那么首先就要把环境搭建起来,本来想着用Windows的环境来搞,方便一些,但是无奈使用乐鑫的工具来创建,下载速度很慢很慢,所以就打消了这个念头,就想想还是使用Linux的开发环境吧。
我使用的系统为Ubuntu20.04,这里强调一下,因为我尝试用16.04来搭建是有问题的,具体什么问题其实我也忘记了。。。
首先先安装所需要的包:
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
然后这个比较重要了,需要将python2卸载,不然后面的编译会出现很多奇奇怪怪的错误,切记!
//1.卸载python2.7
sudo apt-get remove python2.7
//2.卸载python2.7及其依赖
sudo apt-get remove --auto-remove python2.7
//3.消除python2.7
sudo apt-get purge python2.7 or sudo apt-get purge --auto-remove python2.7
获取源码:
mkdir -p ~/esp
cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git
但是我不建议这样获取,毕竟github,你们懂的,可以使用码云来下载。
安装:
cd ~/esp/esp-idf
./install.sh
安装过程中其实也是去github找东西安装,不过相对于获取源码,这里的东西会小一点,成功率会高点。需要找一个网络环境相对好点的地方进行安装。
安装完成之后,设置环境变量:
. $HOME/esp/esp-idf/export.sh
拿helloworld来试试水,将工程拷贝到~/esp目录下,设置工程:
cd ~/esp/hello_world
idf.py set-target esp32
idf.py menuconfig
编译工程:
idf.py build
至此,工程就算是编译完成了。
烧录到esp32:
sudo chmod 0777 /dev/ttyUSB0
idf.py -p /dev/ttyUSB0 flash
这里注意,除非你是root用户,普通用户需要修改/dev/ttyUSB0的权限,否则是会出现没权限而烧写失败的情况。我这个开发板是需要按下en键然后就会出现下载的log,不同开发板不同情况得具体看说明。
查看打印信息可以使用自带的,也可以使用minicom来查看,就看每个人的使用习惯了,打印出helloworld就运行起来了。
其实我这个是虚拟机来的,已经打包好了,如果有需要的话可以点个关注,然后私信跟我说,我会把虚拟机的压缩包发出,要是需求量比较大的话我也在这篇文章的下方写上链接供大家下载。