零.前言
首先说一下为什么放弃8266。因为在与8266-12F差不多价格的ESP32C3对比下,C3多了蓝牙,USB等外设,且32的架构还支持更多的休眠模式更多的功能,这性价比刚刚的。
一.安装环境介绍
板子是自己画的板子,最小系统板+CH340N:
本电脑ℹ7-8750 ,ubuntu20.04,python用的和宝塔一样版本的3.8.3
本安装教程不只局限于C3,ESP32S2,ESP32S3等芯片的开发环境也可以参考此教程。
二.安装过程
大前提:安装过程可以参考一手资料,官方而且可能会有更新,我的教程经供参考,所以看这个就可以了:
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32c3/get-started/index.html
小前提:推荐使用科学的方式上网,因为很多东西是从github上下载的。而且最近的网不太好,如果下载失败请重复运行某些命令多次,直到成功,有些时候我运行了五、六次才完全安装成功。
安装方式有廷多的,新手推荐使用VScode安装Espressif IDF
插件,然后根据提示就可以下载安装完成了,大概耗费流量1.3G左右。
这里推荐手动安装,这样可以有针对性一点儿,而且让你知道你下了什么在什么位置,可以手动中断、恢复安装。
1.1 安装系统工具
这一步主要安装一些CMake、Python等系统不可或缺的东西:
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
1.2 SDK下载安装
这里不只是需要下载IDF,还需要额外递归的下载一些需要使用的包,而且为了不用后面改命令。如果需要自己安装到指定位置,可以参考官方的文档向shell里添加一些变量,就可以了。本文全部安装在默认位置。
我们得在$HOME
下新建一个esp
的文件夹:
mkdir -p ~/esp
cd ~/esp
git clone -b release/v4.4 --recursive https://github.com/espressif/esp-idf.git
安装好后,是这样的:
1.3 安装工具链
cd ~/esp/esp-idf
./install.sh esp32c3
当然,我们也可以安装其他芯片esp32,esp32c3,esp32s3
等
安装好后是这样的:
1.4 导入环境变量
编译的时候有些工具的默认目录等之类的信息必须载入到shell里,所以每次在新shell里都要运行该命令
. $HOME/esp/esp-idf/export.sh
1.5 编译
比如我们编译这个exmaple
:~/esp/esp-idf/examples/wifi/getting_started/softAP
cd ~/esp/esp-idf/examples/wifi/getting_started/softAP
idf.py set-target esp32c3
每一个项目都需要运行一次set-target
,可以用table补全命令,但是可能有点儿延迟。
编译的话就是:
idf.py build
1.6 烧录
如果电脑以前没有执行过权限操作,那么需要执行一次:
sudo usermod -a -G dialout $USER
然后插上我们的板子(CH340口):
ls /dev/tty*
一般来说CH340会出现一个USB0,而C3的USB口会出现个ACM0,亦或着USB123等后面数字不限,我们得记住这个/dev/ttyUSB几
然后板子烧录上电,并运行:
idf.py -p /dev/ttyUSB0 flash
1.7 查看串口信息
idf.py -p /dev/ttyUSB0 monitor
记得关闭监视器的时候,用Ctrl+]
二.VScode上的插件
用VScode上的插件,能够很好的帮我们进行便以下载烧录等功能,还可以Debug!
只要我们手动安装好了,IDF会自动初始化完成的。
该工具可以选择工作区里面的单独文件夹进行操作,且介绍一下常用功能:
2.1 包管理
2.2 Debug口选择
可以选择ttyUSB0,也可以
这里我就选择了用USB口,因为等下还有其他操作
2.3 选择芯片以及编译方式
可以选Built-in USB
,这样可以编译成.elf
然后用板载USB(ACM0)口下载,当然用串口(USB0)就选择ESP-PROG
2.4 编译烧录监视
剩下的功能就如其名了:
剩下的功能就自己探索吧。
三.后记
ESP32C3真香,IDF真好用。