访问以下链接可下载有关 ESP32 的文档资料
https://www.espressif.com/zh-hans/products/socs/esp32/resources
ESP32 datasheet_cn
https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_cn.pdf

ESP32

ESP23的硬件资源

ESP32 是集成 2.4 GHz Wi-Fi 和蓝牙双模的单芯片方案,采用台积电(TSMC)超低功耗的 40 纳米工艺,拥有最佳的功耗性能、射频性能、稳定性、通用性和可靠性,适用于各种应用和不同功耗需求。
ESP32具有多个高级外设接口:
• 18 个12-bit SAR ADC
• 2 个 8-bit D/A 转换器(DAC)
• 10 个触摸传感器
• 3 个 串行外设接口SPI
• 2 个 I2S
• 2 个 I2C
• 3 个 UART
• 1 个 Host SD / eMMC / SDIO
• 1 个 Slave SDIO / SPI
• 2 个定时器群组,每组包括 2 个 64-bit 通用定时器和 1 个主系统看门狗
• CAN 2.0
• IR(TX / RX)红外
• 脉冲宽度调制 PWM
• LED PWM,多达 16 个通道
• 霍尔传感器
• 超低功耗前置模拟放大器
• 温度传感器
• 带有专用 DMA 的以太网 MAC 接口,支持 IEEE 1588

ESP32一共有48个 管脚,其中:

Strapping 管脚

ESP32 共有 6 个 Strapping 管脚。
• GPIO0:内部上拉,Flash 烧录时要拉低电平
• GPIO2:内部下拉
• GPIO4:内部下拉
• GPIO5:内部上拉(启动必须为高)
• GPIO12:内部下拉(启动必须为低)
• GPIO15:内部上拉(启动必须为高)

数字通用IO管脚:

数字 IO 管脚都是双向、非反相和三态的,包括带有三态控制的输入和输出缓冲器。这些管脚可以复用作其他功能,例如SDIO 接口、UART、SI 、IIC等,应尽可能的选用这些引脚。

GPIO 输入 输出 备注
0 OK OK 内部上拉,启动时输出PWM信号 ,FLASH烧录控制引脚
1 OK OK UART0 TXD 串口输出
2 OK OK 内部下拉
3 OK OK UART0 RXD 串口输入,且启动时为高电平
4 OK OK 内部下拉
5 OK OK 内部上拉,启动时输出PWM信号
12 OK OK MTDI 可用于JTAG调试、内部下拉
13 OK OK MTCK 可用于JTAG调试
14 OK OK MTMS 可用于JTAG调试,启动时输出PWM信号
15 OK OK MTDO 可用于JTAG调试、内部上拉
16 OK OK UART2_RXD
17 OK OK UART2_TXD
18 OK OK
19 OK OK
20 OK OK
21 OK OK IIC_SDA
22 OK OK IIC_SCL
23 OK OK
24 OK OK
25 OK OK
26 OK OK
27 OK OK
28 OK OK
29 OK OK
30 OK OK
31 OK OK
32 OK OK 32K_XP
33 OK OK 32K_XN

特别的,GPIO 6-GPIO 11连接到ESP32模块上的集成SPI闪存,不建议用于其他用途

GPIO 输入 输出 备注
6 OK OK SD_CLK
7 OK OK SD_DATA_0
8 OK OK SD_DATA_1
9 OK OK SD_DATA_2、UART1_RXD
10 OK OK SD_DATA_3、UART1_TXD
11 OK OK SD_CMD

仅输入管脚为:

GPIO 34-39是GPIO仅输入引脚。这些引脚没有内部上拉或下拉电阻。它们不能用作输出,因此只能将这些引脚用作输入,常用于ADC输入通道。
GPIO 34
GPIO 35
GPIO 36
GPIO 37
GPIO 38
GPIO 39

模数转换ADC:

ESP32 集成了 12-bit SAR ADC,共支持 18 个模拟通道输入。其中一些管脚可以通过配置可编程增益放大器,用作测量弱模拟信号。下面是用作ADC的GPIO以及对应的各个通道

  • ADC1_CH0 (GPIO 36)
  • ADC1_CH1 (GPIO 37)
  • ADC1_CH2 (GPIO 38)
  • ADC1_CH3 (GPIO 39)
  • ADC1_CH4 (GPIO 32)
  • ADC1_CH5 (GPIO 33)
  • ADC1_CH6 (GPIO 34)
  • ADC1_CH7 (GPIO 35)
    ————————————
  • ADC2_CH0 (GPIO 4)
  • ADC2_CH1 (GPIO 0)
  • ADC2_CH2 (GPIO 2)
  • ADC2_CH3 (GPIO 15)
  • ADC2_CH4 (GPIO 13)
  • ADC2_CH5 (GPIO 12)
  • ADC2_CH6 (GPIO 14)
  • ADC2_CH7 (GPIO 27)
  • ADC2_CH8 (GPIO 25)
  • ADC2_CH9 (GPIO 26)
    注意:
    当使用WIFI时,不能再使用ADC2通道。只能选择ADC1通道的引脚用作ADC读取

数模转换器(DAC):

ESP32 有 2 个 8-bit DAC 通道,将 2 个数字信号分别转化为 2 个模拟电压信号输出。DAC 电路由内置电阻串和 1 个缓冲器组成。这 2 个 DAC 可以作为参考电压使用,也可以作为其它电路的电源使用。这是 2 个独立的DAC。

  • DAC1 (GPIO25)
  • DAC2 (GPIO26)

触摸传感器

ESP32 有 10 个电容式传感 GPIO,能够探测由手指或其他物品直接接触或接近而产生的电容差异。

  • T0 (GPIO 4)
  • T1 (GPIO 0)
  • T2 (GPIO 2)
  • T3 (GPIO 15)
  • T4 (GPIO 13)
  • T5 (GPIO 12)
  • T6 (GPIO 14)
  • T7 (GPIO 27)
  • T8 (GPIO 33)
  • T9 (GPIO 32)

通用异步收发器(UART)

ESP32 有 3 个 UART 接口,即 UART0、UART1 和 UART2,支持异步通信(RS232 和 RS485)和 IrDA,通信速率可达到 5 Mbps( 5Mbps=5120Kbps=640KB/s)。
上述的任意数字通用管脚重新定义为串口通信引脚。默认管脚在上表以标明。

I2C 接口

ESP32 有 2 个 I2C 总线接口,根据用户的配置,总线接口可以用作 I2C 主机或从机模式。I2C 接口支持:
• 标准模式(100 kbit/s)
• 高速模式(400 kbit/s)
• 速度最大可达 5 MHz,但受制于 SDA 上拉强度
• 7-bit/10-bit 寻址模式
• 双寻址模式
上面所说的数字通用IO管脚都可以设置为IIC的通信管脚,默认为:
GPIO 21 (SDA)
GPIO 22 (SCL)

I2S 接口

ESP32 拥有 2 个标准 I2S 接口。这 2 个接口可以以主机或从机模式,在全双工或半双工模式下工作。并且可被配置为 8/16/32/40/48-bit 的输入输出通道,支持频率从 10 kHz 到 40 MHz 的 BCK 时钟。当 1 个或 2 个 I2S 接口被配置为主机模式时,主机时钟可以输出到外部 DAC / CODEC。 2 个 I2S 接口都有专用的 DMA 控制器。支持 PDM 和 BT PCM 接口。
上面所说的数字通用IO管脚都可以设置为I2S的通信管脚

红外遥控器(RMT)

红外遥控器支持 8 通道的红外发射和接收。通过程序控制脉冲波形,遥控器可以支持多种红外协议。8 个通道共用 1 个 512 x 32-bit 的存储模块来存放收发的波形。
上面所说的数字通用IO管脚都可以。

脉冲计数器

脉冲计数器通过 7 种模式捕捉脉冲并对脉冲边沿计数。内部有 8 个通道,每个通道一次可同时捕捉 4 个信号。每组 4 个输入包括 2 个脉冲信号和 2 个控制信号。当计数器达到了设定的阈值,就会产生 1 个中断。

脉冲宽度调制(电机PWM)

PWM 控制器可以用于驱动数字马达和智能灯。该控制器包含 PWM 定时器、PWM 执行器和 1 个专用的捕捉子模组。定时器可以同步定时,也可以独立运行。每个 PWM 执行器为 1 个 PWM 通道生成波形。专用的捕捉子模组可以精确捕捉外部定时事件。
上述的任意数字通用管脚都可以输出PWM。

LED PWM

LED PWM 控制器可以生成 16 路独立的数字波形,波形的周期和占空比可配置。

通用串行外设接口(SPI)

ESP32 共有 3 组 SPI(SPI、HSPI 和 VSPI)接口,可以在主机或从机模式,在 1-line 全双工或 1/2/4-line 单工通信模式下工作,作为通用 SPI 支持以下特性:
• 4 种定时模式的 SPI 格式传输,模式取决于极性(POL)和相位(PHA)
• 最高支持 80 MHz,也支持 80 MHz 的分频时钟
• 最高支持 64 Bytes 的 FIFO
所有 SPI 接口也可以用来连接外部 Flash / SRAM 和 LCD。每一个 SPI 控制器可连接到 DMA 通道。
上面所说的数字通用IO管脚都可以。默认如下:

SD/SDIO/MMC 主机控制器

ESP32 集成一个 SD/SDIO/MMC 主机控制器,支持:
• SD 卡 3.0 和 3.01 版本
• SDIO 3.0 版本
• CE-ATA 1.1 版本
• 多媒体卡(MMC 4.41 版本、eMMC 4.5 版本和 4.51 版本)
控制器实现了高达 80 MHz 的时钟输出,并且支持 3 种数据总线模式:1 bit、4 bit 和 8 bit。在 4-bit 数据总线模式中,可以支持 2 个 SD/SDIO/MMC4.41 卡,还支持 1 个以 1.8 V 电压工作的 SD 卡。
管脚如下:

管脚 信号
MTMS /GPIO14 HS2_CLK
MTDO /GPIO15 HS2_CMD
GPIO2 HS2_DATA0
GPIO4 HS2_DATA1
MTDI /GPIO12 HS2_DATA2
MTCK /GPIO13 HS2_DATA3

以太网 MAC 接口

ESP32 为以太网通信提供了一个符合 IEEE-802.3-2008 标准的媒体访问控制器(MAC)接口。ESP32 需要一个外部物理接口(PHY)来连接实体 LAN 总线(双绞线、光纤等)。物理接口通过 17 个 MII 信号或 9 个 RMII 信号与 ESP32 连接。以太网 MAC 接口(EMAC)支持以下特性:
10 Mbps 和 100 Mbps 的速率
• 专用的 DMA 控制器实现以太网 MAC 接口与专用 SRAM 之间的高速传输
• 带标记的 MAC 帧(支持 VLAN) • 半双工(CSMA / CD)和全双工操作
• MAC 控制子层(控制帧)
• 32-bit CRC 自动生成和消除
• 用于单播和组播地址(广播和组地址)的多种地址过滤模式
• 记录每个收发帧的 32-bit 状态码
• 内部 FIFO 用于缓冲发射和接收帧。发送 FIFO 和接收 FIFO 均为 512 字(32-bit) • 符合 IEEE 1588 2008(PTP V2)标准的硬件 PTP(精确时间协议)
• 25 MHz / 50 MHz 的时钟输出

温度传感器:

温度传感器的测量范围为 -40°C 到 125°C,内部 ADC 将传感器电压转化为一个数字量。通过外部校准可以得到一个比较好的结果。

ESP32的硬件资源相关推荐

  1. 芯片、模组、开发板的区别与联系-结合ESP32浅谈(转载)

    1.从外形说起: 1.1芯片 没错,这块黑色的小硅片就是"芯片"本体(通常比大拇指还小,内部集成了实现特定功能的硬件集成电路). 1.2模组 由上述芯片研发的模组是这样的: 从外形 ...

  2. 启明云端分享|ESP32在开发环境时,环境搭建及应用、软件平台时常遇到的问题答疑(FAQ)

    问题描述及解答: 1.环境搭建 安装环境出现can not create a virtual environment. 该错误是因为新版环境需要安装虚拟python环境,出现错误通常有两个原因. 1. ...

  3. arduino tft 方向_ESP32在Arduino环境下玩转 LVGL,ESP32移植LVGL详细教程

    微信关注 "DLGG创客DIY"设为"星标",重磅干货,第一时间送达. ❝ 转载自慕容流年 https://me.csdn.net/qq_41868901 ❞ ...

  4. ESP32产品系列之智能插座(一),框架及硬件设计

    文章目录 一.首页 二.简单描述控制过程 三.描述硬件设计 一.首页 首先,先简单说明这个系列产品的控制架构以及使用到的硬件资源. 1.ESP32-WROOM-32D,用到它的WIFI功能 2.家里的 ...

  5. esp32 鸿蒙,ESP8266最佳开发板--ESP-LAUNCHER开发板评测

    要评选中国影响力十大芯片,ESP8266必在其中.虽然开发文档有些混乱,各种生态纷杂,但它的低价,给了开发者更低门槛,也让更多人都参与到WiFi的开发体验中来. 从这种意义上来说,ESP8266是一款 ...

  6. ESP32学习入门:WiFi连接网络

    目录 一.ESP32简单介绍 二.ESP32 Wi-Fi模块介绍 三.ESP32 Wi-Fi 编程模型 四.ESP32 Wi-Fi 事件处理流程 五.ESP32 Wi-Fi开发环境 六.ESP32 W ...

  7. ESP32学习笔记(七) 复位和时钟

    ESP32学习笔记(七) 复位和时钟 目录: ESP32学习笔记(一) 芯片型号介绍 ESP32学习笔记(二) 开发环境搭建 VSCode+platformio ESP32学习笔记(三) 硬件资源介绍 ...

  8. 快速入门ESP32的硬件设计原理以及典型应用案例UART串口转WIFI智能硬件,以及ESP32-Lyra(智能音频台)设计方案。

    前言:可私信免费领取 该手册是中文版的ESP32硬件设计指南,提供了ESP32 系列产品的硬件信息,包括ESP32 芯片,ESP-WROOM-32 模组以及ESP32-DevKitC 开发板.包含开发 ...

  9. ESP32学习笔记(一) 芯片型号介绍

    ESP32学习笔记(一) 芯片型号介绍 目录: ESP32学习笔记(一) 芯片型号介绍 ESP32学习笔记(二) 开发环境搭建 VSCode+platformio ESP32学习笔记(三) 硬件资源介 ...

最新文章

  1. javascript 深度克隆对象
  2. python标识运算符_讲解Python中的标识运算符
  3. 深入理解position:relative 与 position:absolute(divb相对于diva进行绝对定位)
  4. CososJS学习笔记(1) 环境配置(填坑版,让你少走弯路!)
  5. 最全三大框架整合(使用映射)——IDeptService.java
  6. 小程序picker标题_微信小程序-自定义picker选择器
  7. 23种设计模式的优点与缺点概况
  8. leetcode题解77-组合
  9. 廖雪峰python教程-廖雪峰Python教程的配套视频教程,全套完整版!
  10. 安卓handler机制
  11. 同步回调与异步回调区别
  12. 关于起点中文网的一个我自认为是BUG的BUG(花了我一毛三分钱才实验出来的)...
  13. 解决kubernetes启动容器时,容器一直是ContainerCreating不能running
  14. 如何培养员工的团队合作精神
  15. FP6276兼容芯片可过EMI认证测试
  16. 各位单身狗的福音:表白爱心魔改版
  17. 澳门大学之波尔图大学交换
  18. libfdk_aac解码AAC
  19. 30天吃掉那只tensorflow之(2):使用 cifar10 数据集来训练网络并测试
  20. linux下使用百度网盘不限速下载文件超简超好用

热门文章

  1. 关于关税和汇率传导的文献综述概论-根据余智著作概括
  2. Pr:提高工作性能的设置
  3. POJ - 2528 Mayor's posters (浮水法+线段树/离散化+线段树)
  4. GCC编译器与OpenCV图像编程
  5. 田雪松硬笔行书临文征明《滕…
  6. WORD转换成PDF转换器2015官方版?
  7. 关于Excel的应用集以及快捷操作运用(迭代更新)
  8. Microsoft Exchange Server 2010与Office 365混合部署——安装AADC目录同步服务器
  9. Freescale关于USB BDM MULTILINK调试器使用说明
  10. Linux命令·touch