访问以下链接可下载有关 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. shell命令之(一) 初探grep
  2. 计数排序之python 实现源码
  3. caffe框架下目标检测——faster-rcnn实战篇问题集锦
  4. python函数对变量的作用域_python函数变量作用域如何理解使用?
  5. auto.js停止所有线程_Java线程与并发编程实践:深入理解volatile和final变量
  6. 后端技术:MyBatis动态SQL写法介绍
  7. BSD socket编程学习
  8. mysql下载for linux 64_mysql官网下载linux版本安装包
  9. 7-30 字符串的冒泡排序 (20 分) or 7-27 冒泡法排序 (20 分)
  10. 360与Bing合作上线英文搜索
  11. IntelliJ IDEA设置炫酷主题
  12. 计算机上网记录怎么清除,电脑浏览器上网记录怎么删除
  13. 比较好的运动耳机,好用的运动耳机推荐
  14. Hive 优化之 推测执行
  15. 【AIOT】3-1 物联网项目必备功能模块
  16. 2023电工杯数学建模竞赛B题思路解析+代码+论文
  17. 【js】Ajax提交form表单(ajaxSubmit使用讲解 )
  18. 单点登录系统的设计与实现方案
  19. 生产环境 遭遇 fastJson1.2.78 巨坑
  20. [C语言] 函数:库函数--自定义函数--函数的调用--练习--详解<个人>------(1)

热门文章

  1. STC15W通过SPI方式读取RM3100数据
  2. JWT安全 知识点总结
  3. 搭建前端网络请求模块
  4. animate方法使用总结
  5. 广东计算机水平测试报名,广东计算机等级考试报名时间
  6. 图像处理(Image Processing) ---------- 灰阶位图分割 (bit-plane slicing)(浮水印)(C#实现)
  7. 数据量不断增大的几种简单的优化方案
  8. 互联网时代的营销方法
  9. 谌椿抵喜票狼疗阎兄凑咦,王超?是你?你来这里干什么,找人么?”王超一边
  10. 硅谷想挑战非洲市场?非洲并不适合胆小鬼