ESP32-S3 是乐鑫发布的一款集成 2.4 GHz Wi-Fi 和 Bluetooth 5 (LE) 的 MCU 系统级芯片(SoC),支持远距离模式 (Long Range)。ESP32-S3 搭载 Xtensa® 32 位 LX7 双核处理器,主频高达 240 MHz,内置 512 KB SRAM (TCM),具有 45 个可编程 GPIO 管脚和丰富的通信接口。ESP32-S3 支持更大容量的高速 Octal SPI flash 和片外 RAM,支持用户配置数据缓存与指令缓存。介绍了这么多参数,那我们来看一下这款芯片长什么样子吧:
低功耗芯片ESP32-S3是专门为物联网(IOT)设备而设计的,应用范围非常广,不夸张的说,基本上我们现在市面上用的所有消费类电子产品基本上都可以用它。家里旧版空调不能联网,以后更新换代时用它,就可以让你的空调联网,进行远程控制。电饭锅不能联网,以后加上它,电饭锅就能远程控制。要具体举例说的话,那就太多了,如果归类一下的话,应用领域就包括:
我们仅有这么一颗SoC芯片还是不能直接做成产品的,还是需要将其封装起来,加一些外围电路、加上通信用的IO口才能跟外部设备进行通信。例如我们想制作一个人脸识别的门禁设备,那么就需要加上一个摄像头排线接口才能外接摄像头进行图像获取和处理,加上天线电路才能连接到WIFI或蓝牙设备,加上SPI flash才能储存大容量数据。所以说还是有很多工作要做才能使这颗SoC芯片正常工作,官方给出一个ESP32-S3芯片的核心电路原理图可以参考,核心电路需要 20 个左右的电阻电容电感、1 个无源晶振及 1 个 SPI flash:
如果你要是感觉自己设计这些电路有点麻烦,也可以选择设计封装好的ESP32-S3模组。模组就是把芯片的这些工作外围电路都给你搭建好,做成一个小板子,板边设计有邮票孔,我们可以很方便的将这个小板子焊接到我们的电路板上,这样我们只需要设计非常少的外围电路就可以,基本上只要是供上电就可以啦,大大减轻了我们的开发周期,那是相当的方便,但是缺点也有,就是成本会稍微高一点。当然其实也可以自己开发模组,因为电路原理图都给你了,我们只需要按照人家官方给的原理图,自己画PCB layout一下就可以了,乐鑫官方发布的模组如下图所示:
对于乐鑫发布的模组会有不同的型号,其实核心芯片都是一样的都是ESP32-S3,不同型号不同之处在于片外Flash和PSRAM大小,官方发布的配置最高的型号是ESP32-S3-WROOM-1-N16R8,它有16MB的Flash和8MB的PSRAM,我认为这个配置已经足够我们做开发用了:
我们利用这些封装好的模组来设计有具体功能的单片机板就可以了,如果要想做一款通用功能的开发板,那常用的做法就是把模组的IO全部引出来,让用户根据需要自己外接设备就可以了,那我自己设计的一款通用功能的ESP32-S3迷你开发板,如下图所示:
不是所有的开发板都需要设计扩展板,你只需要在设计开发板的时候直接将对应的外部接口设计好就可以了。但是这样就会造成一个问题,如果我们需要做其他产品的话,那整个开发板又需要重新设计,这样做就会造成一些时间和硬件成本上的浪费。我的想法是我们的核心开发板不变,我们可以根据产品需要设计一些有对应接口的扩展板,这样我们在开发时间上就会快很多,因为设计外部接口板是很容易的。还有一个原因是如果我们核心板上的某些功能失效,没法修理,我们只需要更好核心板就行,我们与外部设备连接的扩展板都不用做任何变动。
这里为了方便我们进行学习ESP32-S3的开发,我们会用到不同的功能,不可能把这些所有的功能都放在一款开发板上,这样会造成成本太高。如果我们根据不同的学习需要,我们选择对应成本较低的只有特定功能的扩展板,那就会方便很多。这里方便我们入门学习,我先设计了一款连接各种传感器的扩展板,如下图所示:
有了这款简单易用的扩展板,我们就可以方便的外接一些传感器。当然后面我会一边开发一些新的扩展板,一边来发布教程,这样方便我们来学习ESP32-S3的开发。我认为刚入门学习,拿这一款扩展板就很方便。
[0].乐鑫信息科技(上海)股份有限公司官网. https://www.espressif.com.cn/zh-hans
[1].Cadence官网Xtensa LX 处理器平台介绍. https://www.cadence.com/zh_CN/home/tools/ip/tensilica-ip/tensilica-xtensa-controllers-and-extensible-processors/xtensa-lx-processor-platform.html
[2].XTENSA处理器介绍. https://blog.csdn.net/whatday/article/details/87268727
[3].ESP32-S3系列芯片技术规格书. https://www.espressif.com/documentation/esp32-s3_datasheet_cn.pdf
[4].ESP32-S3系列硬件设计指南. https://espressif.com/documentation/esp32-s3_hardware_design_guidelines_cn.pdf
[5].ESP32-S3-WROOM-1/1U模组技术规格书. https://www.espressif.com/documentation/esp32-s3-wroom-1_wroom-1u_datasheet_cn.pdf
[6]. ESP32-S3技术参考手册. https://www.espressif.com/documentation/esp32-s3_technical_reference_manual_cn.pdf
新型冠状病毒肺炎(Corona Virus Disease 2019,COVID-19),简称“新冠肺炎”,世界卫生组织命名为“2019冠状病毒病” [1-2] ,是指2019新型冠状病毒感染导致的肺炎。
ESP32的DAC函数可以实现真正的模拟输出。
ESP32 没有Arduino输出 PWM 的 analogWrite(pin, value) 方法,取而代之的 ESP32 有一个 LEDC 来实现PWM功能。
本文学习如何使用ESP32开发板来进行多线程的开发。
ESP8266有三种工作模式,分别为:AP,STA,AP混合STA
ESP32有四个SPI外设,分别为SPI0、SPI1、HSPI和VSPI。