入坑嵌入式以来,一直都在寻找一款通用MCU控制器:他应有优秀的计算处理能力、丰富的外设扩展能力、支持有线/无线联网、小巧的封装。自从ESP8266爆火以来,熟悉过它的使用,但窘于硬件限制,只能做一些简简单单的事情,很多应用都需要搭配另外的MCU使用,体现不出多功能。随后ESP32发布,600MIPS运算能力、WIFI+BLE+ETH、QFN封装、不到10元的价格。一眼就认定它才是我要找寻的那个人,不过当时入门尚浅,网络啊Make啊不甚了解,加之生态还不是很完善,没有立即入坑。但现在ESP32的生态可谓相当成熟,乐鑫ESP-IDF的教程遍天是,数款模组和开发板任君选择,Arduino、PlatformIO、NodeMCU 都对ESP32提供了支持。比较有意思的是:上周树莓派发布了RP2040,但国内外论坛表示完全不虚,ESP32还能称霸好几年,国内厂商在某一领域做到这步,其付出尤为可嘉。
近期STM32涨价,供应商提前得知消息囤货导致价格暴涨,部分型号的价格翻了三四倍,更可怕的是芯片交期也变长了,替换的需求迫在眉睫。既然着眼长期,那索性来干脆点,国外的替换为国产,功能单一的替换为功能丰富的。在高性能商用处理器方面,与国外确实存在差距,但MCU领域完全不存在技术限制,既然市场有需求,那差的只是一个时机。商贩的炒价正好助长了一波MCU国产化替代浪潮,天下苦芯久矣,外芯已死国产当立。
言归正传,ESP32这个坑蹲很久了,近日有幸填上,之后会陆续推出一系列教程文章,包括 基础外设 | RTOS | WIFI | 物联网平台 | 蓝牙 | GUI开发。另外择机肝出几个型号开发板,做demo开发、当当小摆件都是极好的,敬请期待。
出于开发,需要原厂技术支持考虑,使用 ESP-IDF。(ESP-IDF 内置 FreeRTOS+Lwip,无论是开发,还是用来学习MCU的嵌入式,都十分友好)
windows的开发工具和软件多啊,并且教程多,方便查资料。
第1种是以前推荐的方式,编译非常慢。第2种编译速度快好几倍,不过需要折腾一下。第3种是乐鑫最新推荐的,编译速度快,windows下非常好用。
盲选Vscode,帅就完了。乐鑫官方提供Vscode插件,一站式安装,直接将Vscode升格为IDE,配合上Vscode原有的插件、主题,coding的过程十分惬意。
于是本篇介绍的开发方式为:windows系统下,用Vscode进行一站式开发,使用最新推荐的CMake编译,编译速度大大提高。
提前准备好工具,以前有安装过的就不需要装了。(Python一定要3.8版本,3.7安装会有非常多问题)
一定要先将 Git和Python安装好,ESP-IDF Tools的安装依赖于Python,而乐鑫的Vscode插件又要求Python版本不能太低。(一定要3.8版本,3.7安装会有非常多问题!!)过程中试着安装了两三台电脑,都是Python版本的原因。
因为源的原因,下载速度很忙,所以能用本地安装就用本地安装。但还是要保持电脑始终联网。
一路Next到底。以前有的就不要装了,对Git版本没什么要求。
强烈建议使用Python3.8版本,如果以前装的是3.7就卸了重装,不然后面问题好多。
更新,这一步也是必须的,不然后面运行Vscode插件也会报错。
windows搜索cmd,使用命令行窗口:python.exe -m pip install --upgrade pip
Git clone ESP-IDF的最新版本。当前最新版本为 V4.2。
也可以去官网下载本地解压包,之后解压到当前目录。修改文件名为 esp-idf。
esp-idf-tools-setup-2.3.exe 是乐鑫为方便用户使用ESP-IDF,定制的一款工具集合包。包括Cmake、OpenOCD等,可以自动检测本地的 Python和Git,以便自动安装缺失工具。
桌面上会出现快捷方式,也可以通过这个来启动 ESP-IDF Command Prompt (cmd.exe)。
cd examples\get-started\hello_world
dir
idf.py clean
idf.py build
下面安装Vscode及乐鑫插件,此插件可以将Vscode升格为IDE,将编码、调试、终端操作,全部转移到Vscode上,方便Coding和调试。
从微软官网下载Vscode,一路Next安装到底。