ESP32设计开始
认识ESP32模组&芯片
ESP32常用的有模组和芯片两种形式
模组↓
芯片↓

一般模组就是对芯片一些基础的依赖电路(射频电路,晶振,供电)进行了封装,使得模组需要外围电路非常简单。 但是模组的尺寸比较大不适合集成度要求非常高的地方 而芯片对电路设计和焊接的要求都比较高 在非必要的情况下都经可能基于模组设计ESP32系统,非要使用芯片可以使用pico系列电路比较简单。
硬件设计参考
可以前往官网查看每个芯片的设计手册查看每种芯片的注意事项 Esp32模组 并且多在嘉立创开源平台参考他人的设计 嘉立创开源平台
最小系统设计指南
这里会展示如何设计一个最基本的esp32最小系统
供电电路
常用的外部供电有USB和外部电源(电池等),USB电压为5V,外部电源一般大于7V,常用的6S电池可达到25V 但是Esp32模组只能采用3.3V供电,所以降压电路是必要的 常用降压有两种 - DC-DC - LDO
DC-DC
DC-DC用于大电压大电流的场景,具有较高的效率,如果你的电路是外部供电那么就需要设计DCDC电路
我们常用的DCDC芯片为TPS5430 输入<35v 输出3A足够满足大部分场景
参考电路
注意
- 输入端的TVS不要省并且型号不能小于输入电压
- 输出端的电容可以自行加减
- BOOT处的电容不能换成大的建议10-100nF
- R1-R3共同决定输出电压 10K-3.24K的组合能正好输出5V
- 电感不同型号的过流能力不同,不能选电流太小的
电感 电阻 和电容的详细说明见手册
LDO
LDO用于低压差小电流的场景,基本上每个单片机系统上都会有5V-3.3V的LDO,LDO电路简单,稳定性高。 https://www.bilibili.com/video/BV1B14y117cA
我们一般常用 - AMS1117(大于500MA) - ME6206(小于300MA) 参考电路
AMS1117

ME6206
注意
AMS1117有两种封装 SOT89 SOT223 记得自行购买时选择固定3.3V输出的版本
ME6206推荐 ME6206A33M3G A33代表输出3.3V M3G代表低功耗版本
两种封装我们都有,但是建议使用SOT89的芯片
下载电路
代码烧录即将程序烧录到flash中,需要让芯片进入下载模式,这里涉及到两个重要的引脚 - EN - BOOT EN引脚:即控制芯片是否启动的引脚,一般高电平启动,低电平关闭 BOOT引脚:在芯片启动时芯片会读取BOOT引脚的电平,一般高电平即正常启动,低电平进入下载模式 BOOT引脚在不同型号的芯片上不一样,在不确定时请查看手册,并且有些其他管脚需要固定的上下拉电阻才能正常进入下载模式 BOOT: ESP32-S3 IO0 ESP32-C3 IO9
下载按键
典型电路:
这个电路默认不按下按键时两个引脚是上拉到3.3V芯片正常工作
启动时按下BOOT按键即可拉低BOOT引脚让芯片进入下载模式
EN引脚上的电容是让芯片缓慢启动防止BOOT读取到意外的电平
USB下载&串口下载
ESP32有两种程序下载方式USB下载和串口下载,虽然往往这两种下载方式体现在使用中都是插上USB接口就能下载,但是电路设计有很大不同 先简单了解一下串口和USB通信
没有找到比较好的介绍USB的视频
我们这里采用的USB2.0/1.1协议主要由一对差分信号通信,差分信号介绍见视频
串口下载是:USB接口-串口芯片-芯片 USB下载是:USB接口-芯片 使用USB下载电路会省下一颗串口芯片并且节省一个串口外设,还能支持JTAG等功能。所以在支持USB下载的ESP32芯片上推荐使用USB下载 但是不是所有的ESP32型号都支持USB下载,可以查看手册确认
支持的芯片: ESP32-S2 S3 ESP32-C3 C5 C6 ESP32-H3 不支持的芯片 esp32-pico-D4 ESP32-WROOM32
TYPE-C简介
建议采用TYPEC端口下载,2024年了不要用micro usb端口了
一个16P type-c母座原理图如下

TYPE-C支持正反插原因是端子上有镜像对称的两组引脚,一般来说需要将镜像的相同的端口连接到一起。 但是CC引脚例外,这是TYPE-C用来检测主从设备的引脚,这里标准是分别下拉5.1K电阻,如果不接在使用双头TYPE-C线材时会识别不到从设备。 理论上你确实可以将两对差分信号接到不同设备,实现正反插不同的效果,但是不建议这样做。
USB下载电路
只需要将USB的差分信号连接到对应的引脚即可
例如:
ESP32-S3


串口下载电路
这里需要使用一颗USB转TTL的芯片
常用的是CH340系列
建议使用CH340X和CH340C
注意下面的电路省略了上拉和按键
CH340X电路

CH340C电路(注意右侧的三极管)

功能引脚
不建议使用的引脚
ESP32的引脚可自映射到任何外设,但是有一些引脚不能这么做或者比较危险
比如连接到内部PSRAM的引脚,仅输入的引脚。
例如:



建议查看对应的芯片手册确认
ADC引脚
ESP32的ADC不能映射并且有很多坑
ESP32有两个ADC通道每个ADC通道多个输入,但是ADC2和射频(wifi,蓝牙等)不能同时使用,所以建议不要使用ADC2
在手册中查看哪些是ADC引脚

引脚保护
ESP32标准的输入高电平是3.3V,输入5V很多时候也能用但是容易损坏芯片
一个简单的保护电路
加上如同的电路就不怕引脚输入高电压损坏芯片了