ESP32芯片是一款集成了 Wi-Fi 和蓝牙功能的双核微控制器,它有多种型号和开发板,每种都有不同的引脚数量和分布。ESP32 的引脚具有多种功能,可以用于通用输入输出、模拟输入输出、通信协议、中断、PWM、DAC、ADC、电容触摸等。在本文中,我们将介绍 ESP32芯片的引脚图及特性和用法,以及一些注意事项。
ESP32 的引脚可以分为以下几类:
电源引脚:这些引脚用于为 ESP32 提供电源,包括 3.3V、5V 和 GND 引脚。一般建议使用 5V 引脚为 ESP32 供电,因为使用 3.3V 引脚可能会导致不稳定或错误。
通用输入输出引脚(GPIO):这些引脚可以在代码中自由控制,作为输入或输出使用。GPIO 引脚的编号从 0 到 39,但并不是所有的引脚都可以访问或使用。GPIO 引脚可以支持以下功能:
模拟输入(ADC):ESP32 有 18 个 ADC 通道,可以读取 0 到 3.3V 之间的模拟电压信号,分辨率为 12 位2。ADC 引脚的编号为 GPIO 32-39(ADC1)和 GPIO 0,2,4,12-15,25-27(ADC2)。注意,使用 Wi-Fi 时不能使用 ADC2 引3。
数模输出(DAC):ESP32 有 2 个 DAC 通道,可以输出 0 到 3.3V 之间的模拟电压信号,分辨率为 8 位4。DAC 引脚的编号为 GPIO 25(DAC1)和 GPIO 26(DAC2)。
脉宽调制(PWM):ESP32 有 16 个 PWM 通道,可以用于控制 LED、电机等设备的亮度或速度。PWM 引脚的编号为 GPIO 0-19,21-23,25-27,32-33。
电容触摸(Touch):ESP32 有 10 个电容触摸通道,可以用于检测人体皮肤或其他带电物体的接触。电容触摸引脚的编号为 GPIO 0,2,4,12-15,27,32-33。
通信协议:ESP32 支持多种通信协议,如 UART、SPI、I2C、I2S、CAN 等。这些协议的引脚可以在代码中自由分配,但有一些默认的引脚分配,如下表所示:
仅输入引脚(GPI):这些引脚只能作为输入使用,不能作为输出。它们没有内部上拉或下拉电阻,因此需要外部电阻来保持稳定的电平。仅输入引脚的编号为 GPIO 34-39。
集成 SPI 闪存引脚:这些引脚连接到 ESP32 芯片上的集成 SPI 闪存,用于存储程序和数据。它们不能用于其他用途,否则可能会损坏 ESP32。集成 SPI 闪存引脚的编号为 GPIO 6-11。
引导模式引脚(Strapping pins):这些引脚用于控制 ESP32 的引导模式,即是从集成 SPI 闪存启动,还是进入烧录模式。在大多数开发板上,这些引脚由电路板自动控制,无需用户干预。但是,如果在这些引脚上连接了外部设备,可能会影响 ESP32 的正常启动或烧录。引导模式引脚的编号为 GPIO 0,2,4,5,12,15。