ESP32 学习笔记
文章平均质量分 83
ESP32 学习笔记
InfiniteYuan
这个作者很懒,什么都没留下…
展开
-
ESP32 学习笔记(三十) ESP32 性能分析,与 Cortex-M4 性能比较
文章目录关于 EEMBCESP32/8266 与 Cortex-M3/M4 性能比较关于 EEMBCAbout EEMBCEEMBC 为自动驾驶,移动成像,物联网,移动设备和许多其他应用程序中使用的硬件和软件制定性能基准。EEMBC 基准测试得分的主要受众是创建依赖嵌入式微控制器和微处理器的系统的公司:从智能手机到太阳能电池板的所有产品。尽管此类制造商通常具有自己的专有基准,但是 EEMBC 提供了一种有吸引力的替代方案,可替代购买硬件,进行设置,然后在候选处理器组上进行所有测量的所有复杂性。 EE原创 2020-07-04 13:25:59 · 3389 阅读 · 0 评论 -
ESP32 学习笔记(二十九) ESP32 低功耗模式
ESP32 低功耗模式原创 2020-05-31 09:59:38 · 15744 阅读 · 8 评论 -
ESP-WHO(一)ESP32 摄像头驱动分析
ESP-WHO(一)ESP32 摄像头驱动分析ESP32 摄像头驱动分析摄像头初始化ESP32 摄像头驱动分析摄像头代码摄像头初始化Step:寻找摄像头提供摄像头时钟、初始化 SCCB 总线、硬件复位摄像头通过 SCCB 总线读取摄像头 ID 等信息更改摄像头的 ID 判断型号,并绑定对应的相关函数(摄像头传感器配置相关函数)初始化摄像头初始化 I2S 总线,使能 I...原创 2019-01-12 18:21:36 · 13294 阅读 · 3 评论 -
ESP32 学习笔记(二十八) ESP32 串口下载过程(使用 esptool) [转]
ESP32 串口下载过程(使用 esptool)转载 2020-03-12 15:38:11 · 3655 阅读 · 0 评论 -
ESP32 学习笔记(二十七) ESP32 的启动过程 [转]
ESP32 的启动过程转载 2020-03-12 15:22:04 · 2802 阅读 · 0 评论 -
ESP32 学习笔记(二十)RTC 和低功耗管理
RTC 和低功耗管理RTC 和低功耗管理功耗模式低功耗模式功耗说明RTC 和低功耗管理ESP32 采用了先进的电源管理技术,可以在不同的功耗模式之间切换。功耗模式Active 模式:芯片射频处于工作状态。芯片可以接收、发射和侦听信号。Modem-sleep 模式:CPU 可运行,时钟可被配置。Wi-Fi/蓝牙基带和射频关闭。Light-sleep 模式:CPU 暂停运行。RTC 存储...原创 2019-03-04 10:10:42 · 8353 阅读 · 3 评论 -
ESP32 学习笔记(十九)High Resolution Timer
高分辨率定时器原创 2018-12-24 11:22:42 · 2094 阅读 · 3 评论 -
ESP32 学习笔记(十八)Virtual filesystem
Virtual filesystemVirtual filesystem component概述FS注册同步输入/输出多路复用Virtual filesystem component概述虚拟文件系统(VFS)组件为可以对类文件对象执行操作的驱动程序提供统一的接口。 这可以是真实的文件系统(FAT,SPIFFS等),也可以是有文件类接口的设备驱动程序。该组件允许 C 库函数(如 fopen ...原创 2018-11-15 17:24:06 · 2691 阅读 · 0 评论 -
ESP32 学习笔记(十七)SDMMC Host Driver
SDMMC Host Driver概述概述在ESP32上,SDMMC主机外设有两个插槽:插槽0(SDMMC_HOST_SLOT_0)是一个8位插槽。 它使用 PIN MUX 中的 HS1_ * 信号。插槽1(SDMMC_HOST_SLOT_1)是一个4位插槽。 它使用 PIN MUX 中的 HS2_ * 信号。这些插槽的引脚映射如下表所示:SignalSlot 0Slo...原创 2018-11-15 17:07:42 · 3540 阅读 · 0 评论 -
ESP32 学习笔记(二十一)电源管理
电源管理电源管理概述配置电源管理锁电源管理概述ESP-IDF 中包含的电源管理算法可以根据应用组件的要求调整 APB 频率,CPU 频率,并使芯片进入 light sleep 模式,以尽可能低的功耗运行应用程序。应用程序组件可以通过创建和获取电源管理锁来表达其要求。例如,由 APB 提供时钟的外围设备的驱动器可以在使用外围设备的时间内请求将 APB 频率设置为80MHz。另一个例子是,当...原创 2019-03-11 22:20:34 · 6035 阅读 · 0 评论 -
ESP32 学习笔记(二十二)睡眠模式
睡眠模式睡眠模式概述WiFi/BT 和睡眠模式唤醒源定时器Touch padExternal 唤醒(ext0)External 唤醒(ext1)ULP 协处理器唤醒GPIO 唤醒(仅 light sleep)UART 唤醒(仅 light sleep)RTC外设和存储器掉电进入轻度睡眠进入深度睡眠IO 配置UART 输出处理检查睡眠唤醒原因禁用睡眠唤醒源应用示例睡眠模式概述ESP32 有轻度...原创 2019-03-12 00:28:34 · 13743 阅读 · 3 评论 -
ESP32 学习笔记(二十三)看门狗
看门狗看门狗概述中断看门狗任务看门狗定时器JTAG 和 看门狗看门狗概述ESP-IDF 支持两种类型的看门狗:中断看门狗定时器和任务看门狗定时器(TWDT)。中断看门狗定时器和 TWDT 都可以使用 make menuconfig 启用,但 TWDT 也可以在运行时启用。中断看门狗负责检测 FreeRTOS 任务切换长时间被阻止的情况。TWDT 负责检测运行的任务在长时间没有让出 CPU 的...原创 2019-03-12 10:52:35 · 5814 阅读 · 0 评论 -
ESP32 学习笔记(二十五)脉冲计数器
PCNT(脉冲计数器)模块用于计算输入信号的上升沿和/或下降沿的数量。每个脉冲计数器单元都有一个 16 位有符号计数器寄存器和两个通道,可配置为递增或递减计数器。原创 2019-03-26 10:40:00 · 7214 阅读 · 2 评论 -
ESP32 学习笔记(二十四)SPIFFS 文件系统
SPIFFS是一个文件系统,用于嵌入式目标上的SPI NOR闪存设备。它支持磨损均衡,文件系统一致性检查等。原创 2019-03-23 20:21:27 · 11417 阅读 · 7 评论 -
ESP32 学习笔记(二十六)NVS
非易失性存储(NVS)库主要用于在闪存中存储键值对。原创 2019-04-12 20:33:16 · 2702 阅读 · 5 评论 -
ESP32 学习笔记(十六)Over The Air Updates (OTA)
Over The Air Updates (OTA)OTA 流程概述OTA 更新机制允许设备根据正常固件运行时收到的数据进行更新(例如,通过WiFi或蓝牙).OTA 要求至少使用两个 “OTA app slot” 分区(即 ota_0 和 ota_1)和 “OTA Data Partition”来配置设备的分区表.OTA 操作功能将新的应用程序固件映像写入当前未用于启动的 OTA ...原创 2018-08-29 00:59:26 · 2274 阅读 · 0 评论 -
ESP32 学习笔记(三)UART - Universal Asynchronous Receiver/Transmitter
UART概述嵌入式应用通常要求一个简单的并且占用系统资源少的方法来传输数据。通用异步收发传输器(UART) 即可以满足这些要求,它能够灵活地与外部设备进行全双工数据交换。ESP32 芯片中有3 个UART 控制器可供使用,并且兼容不同的UART 设备。另外,UART 还可以用作红外数据交换(IrDA) 或RS-485 调制解调器。3 个UART 控制器有一组功能相同的寄存器。本文以UA...原创 2018-08-11 15:41:29 · 8217 阅读 · 0 评论 -
ESP32 学习笔记(五)DAC - Digital To Analog Converter
DAC - Digital To Analog Converter应用示例将DAC通道1(GPIO 25)电压设置为VDD_A电压(VDD * 200/255)的约0.78。 对于VDD_A 3.3V,这是2.59V:#include <driver/dac.h>... dac_output_enable(DAC_CHANNEL_1原创 2018-08-12 19:44:50 · 4408 阅读 · 0 评论 -
ESP32 学习笔记(六)I2C - Inter-Integrated Circuit
I2CI2C(内部集成电路)总线可用于与连接到与 ESP32 相同的总线的多个外部设备进行通信。 ESP32 板上有两个 I2C 控制器,每个控制器可以设置为主模式或从模式。概述以下部分将指导您完成配置和操作 I2C 驱动程序的基本步骤:配置驱动程序 - 选择驱动程序的参数,如主模式或从模式,设置特定的 GPIO 引脚作为 SDA 和 SCL,设置时钟速度等。安装驱动程序 - ...原创 2018-08-12 20:07:28 · 6551 阅读 · 0 评论 -
ESP32 学习笔记(七)I2S - Inter—IC Sound
I2S原创 2018-08-12 22:18:02 · 15230 阅读 · 3 评论 -
ESP32 学习笔记(八)SPI - SPI Master
SPI Master driver概述ESP32有四个SPI外设,称为SPI0,SPI1,HSPI和VSPI。 SPI0完全专用于ESP32用于将连接的SPI闪存设备映射到存储器的闪存缓存。 SPI1连接到与SPI0相同的硬件线,用于写入闪存芯片。 HSPI和VSPI可以免费使用。 SPI1,HSPI和VSPI都有三条片选线,允许它们最多驱动三个SPI器件作为主器件。spi_maste...原创 2018-08-12 23:25:08 · 22149 阅读 · 3 评论 -
ESP32 学习笔记(一)开发环境搭建
ESP32 开发环境搭建ESP32 整体的开发资料相对比较多,官方网站在github上提供了详细的开发环境搭建步骤:ESP-IDF Programming Guide原创 2018-01-16 19:49:38 · 3604 阅读 · 0 评论 -
ESP32 学习笔记(二)GPIO & RTC GPIO
#原创 2018-08-08 11:02:31 · 14836 阅读 · 4 评论 -
ESP32 学习笔记(九)SPI - SPI Slave
SPI Slave driver概述SPI0 专用于闪存缓存,ESP32 用于将连接的 SPI 闪存设备映射到存储器中。 SPI1 连接到相同的硬件线.ESP32有四个SPI外围设备,称为SPI0,SPI1,HSPI和VSPI。 SPI0用于写入闪存芯片。 HSPI和VSPI可以免费使用,通过spi_slave驱动程序,这些可以用作SPI从设备,由连接的SPI主设备驱动。spi_sla...原创 2018-08-13 12:27:32 · 12134 阅读 · 3 评论 -
ESP32 学习笔记(十)Timer
Timer介绍ESP32芯片包含两个硬件定时器组。 每组有两个通用硬件定时器。 它们都是基于16位预分频器和64位自动重载功能的向上/向下计数器的64位通用定时器。功能概述以下各节介绍了配置操作计时器的典型步骤:定时器初始化 - 应设置哪些参数以使定时器工作以及根据设置提供的具体功能。定时器控制 - 如何读取定时器的值,暂停/启动定时器,以及如何操作。警报 - 设置和...原创 2018-08-13 20:36:36 · 5843 阅读 · 1 评论 -
ESP32 学习笔记(十一)LED Control
LED Control介绍LED控制(LEDC)模块主要用于控制LED的强度,尽管它也可用于生成PWM信号以用于其他目的。 它有16个通道可以产生独立的波形,可以用来驱动例如 RGB LED设备。所有LEDC通道中有一半提供高速操作模式。 该模式提供硬件实现,自动和无干扰的PWM占空比改变。 另一半通道在低速模式下运行,其中变化的时刻取决于应用软件。 每组通道也能够使用不同的时钟源...原创 2018-08-13 20:53:55 · 4671 阅读 · 0 评论 -
ESP32 学习笔记(十二)MCPWM
MCPWM概述ESP32有两个MCPWM单元,可用于控制不同的电机。框图MCPWM单元的框图如图所示。 应用示例使用MCPWM进行电机控制的示例:peripherals/mcpwm.API ReferenceHeader Filedriver/include/driver/mcpwm.h...原创 2018-08-13 20:57:00 · 7296 阅读 · 0 评论 -
ESP32 学习笔记(十三)Pulse Counter
Pulse Counter介绍PCNT(脉冲计数器)模块用于计算输入信号的上升沿和/或下降沿的数量。 每个脉冲计数器单元都有一个16位有符号计数器寄存器和两个通道,可配置为递增或递减计数器。 每个通道都有一个接收待检测信号边沿的信号输入,以及一个可用于启用或禁用信号输入的控制输入。 输入具有可选滤波器,可用于丢弃信号中不需要的毛刺。功能概述此API的功能描述分为四个部分:配置...原创 2018-08-13 21:05:12 · 3320 阅读 · 0 评论 -
ESP32 学习笔记(十四)Sigma-delta Modulation
Sigma-delta Modulation介绍ESP32具有二阶sigma-delta调制模块。 此驱动程序配置sigma-delta模块的通道。功能概述用sigmadelta_channel_t识别了八个独立的sigma-delta调制信道。 每个通道都能够输出具有sigma-delta调制的二进制硬件生成信号。应通过在sigmadelta_config_t中提供配置参数然...原创 2018-08-13 21:09:18 · 4502 阅读 · 0 评论 -
ESP32 学习笔记(十五)Touch Sensor
Touch Sensor介绍触摸传感器系统构建在基板上,该基板在保护性平坦表面下承载电极和相关连接。当用户触摸表面时,触发电容变化并产生二进制信号以指示触摸是否有效。ESP32可提供多达10个电容式触摸板/ GPIO。传感垫可以以不同的组合(例如矩阵,滑块)布置,从而可以检测更大面积或更多点。触摸板感测过程在硬件实现的有限状态机(FSM)的控制下,该有限状态机由软件或专用硬件定时器启动...原创 2018-08-13 21:23:49 · 5333 阅读 · 0 评论 -
ESP32 学习笔记(四)ADC - Analog to Digital Converter
ADC - Analog to Digital Converter应用示例读取 ADC1 通道 0(GPIO 36)上的电压:#include <driver/adc.h>... adc1_config_width(ADC_WIDTH_BIT_12); adc1_con原创 2018-08-11 22:26:14 · 13765 阅读 · 2 评论