esp-idf

2024/4/12 7:20:52

00-ESP-IDF 环境配置指南

ESP-IDF 环境配置指南 ESP-IDF安装 1.首先我们在浏览器搜索esp-idf,点击第一个选项 2.点击右边栏的安装 3.我们选择手动安装选择需要的系统版本 4.点击链接 5.这里我们选择一个版本,建议不要选择最新的,安装出现问题在网上不好找到解决办…

esp-idf的内存管理——启航

1 目标 相关博客的目标: 理清楚idf的内存管理组件——设计与实现使自己能够熟练使用idf的内存管理机制为对此感兴趣的后来人提供一个高效的引导 2 规划 所有内容分为5部分: esp-idf的内存管理——esp系列芯片的内存:内存管理是用来管理内…

ESP32基于IDF框架OTA学习记录

ESP32基于IDF框架OTA学习记录 参考: 空中升级 (OTA) - ESP32 - — ESP-IDF 编程指南 v5.1.1 文档 (espressif.com) 目录 ESP32基于IDF框架OTA学习记录1.分区表2.native_ota_example上手2.1配置分区表2.2配置OTA的bin文件2.3修改esp32的https证书验证方法2.4修改当…

【ESP-IDF】你好世界

这里写目录标题创建项目小细节点使用过Arduino的朋友一定会觉得ESP-IDF编译起来又慢又麻烦,但是我们为什么还是要使用ESP-IDF呢?原因就在于它比起Arduino来说更加强大!我们使用ESP-IDF能够更多地对ESP32的底层进行操作! 创建项目 …

ESP32 ESP-IDF LVGL ST7789 演示lv_demo_music

陈拓 2022/09/10-2022/09/11 1. 开发环境 开发环境搭建 见《Ubuntu构建ESP32 ESP-IDF开发环境》 https://blog.csdn.net/chentuo2000/article/details/126777261?spm1001.2014.3001.5502 版本2. 开发板和显示屏 2.1 ESP32开发板 市面上最常见的esp32开发板。 2.2 TFT LCD…

Ubuntu构建ESP32 ESP-IDF开发环境

陈拓 2022/09/08-2022/09/08 Linux系统安装 《DELL台式机Linux ubuntu 20.04.5 安装》 https://blog.csdn.net/chentuo2000/article/details/126761906?spm1001.2014.3001.5501 登录Ubuntu主机 《Win10命令窗口的SSH和SFTP操作》 https://blog.csdn.net/chentuo2000/articl…

esp-idf的内存管理——内存管理组件的初始化

目录1 堆的初始化概览2 堆的初始化源码分析3 归还启动栈参考1 堆的初始化概览 idf会在启动过程中初始化heap组件,初始化主要做了如下几件事: 找出所有连续的内存区域这些内存区域如果有毗邻且caps一致的则合并之在这些内存区域上建立堆通过heap_t将各个…

WSL2 Ubuntu装ESP-IDF以及USB使用

一、前言 小编一开始是使用 Windows 开发ESP的芯片,但是 espidf 在Windows 环境下的编译速度是真的慢,想使用Ubuntu的环境,又不想使用装虚拟机,觉得虚拟机太麻烦了。就想到了 WSL 微软的子系统,介绍一下怎么在 WSL的子…

【物联网设备端开发】物联网设备上云提供开箱即用接入SDK

🌈 个人主页:帐篷Li 🔥 系列专栏:物联网设备端开发 💪🏻 gitee地址:IOTDeviceSDK物联网设备端开发工具包 🤵‍♂️ 物联网设备上云提供开箱即用接入SDK 目录 一、项目介绍 二、项目…

ESP-IDF学习——1.环境安装与hello-world

ESP-IDF学习——1.环境安装与hello-world 0.前言一、环境搭建1.官方IDE工具2.vscode图形化配置 二、示例工程三、自定义工程四、点灯五、总结 0.前言 最近在学习freertos,但由于买的书还没到,所以先捣鼓捣鼓ESP-IDF,因为这个比Arduino更接近底…

05-ESP32-S3-IDF USART

ESP32-S3 IDF USART详解 USART简介 USART是一种串行通信协议,广泛应用于微控制器和计算机之间的通信。USART支持异步和同步模式,因此它可以在没有时钟信号的情况下(异步模式)或有时钟信号的情况下(同步模式&#xff…

esp-idf的电源管理——启航

1 目标 本系列的目标: 理清楚idf的电源管理组件——设计与实现使自己能够熟练使用idf的电源管理机制为对此感兴趣的后来人提供一个高效的引导 2 规划 所有内容划分为以下几个部分: esp-idf的电源管理——esp-idf的电源管理——esp系列芯片的功耗管理…

ESP-IDF 环境配置指南

ESP-IDF 环境配置指南 ESP-IDF安装 1.首先我们在浏览器搜索esp-idf,点击第一个选项 2.点击右边栏的安装 3.我们选择手动安装选择需要的系统版本 4.点击链接 5.这里我们选择一个版本,建议不要选择最新的,安装出现问题在网上不好找到解决办…

ESP32 分区表

ESP32 分区表 1. 分区表概述 ESP32 针对 flash 进行划分,划分为不同的区域用作不同的功能,并在flash的 0x8000 位置处烧写了一张分区表用来描述分区信息。 分区表可以根据自己的需要进行配置,每一个分区都有其特定的作用,可根据…

用Wokwi仿真ESP-IDF项目

陈拓 2023/10/21-2023/10/21 1. 概述 Wokwi是一个在线的电子电路仿真器。你可以使用它来仿真Arduino、ESP32、STM32和许多其他流行的电路板、元器件以及传感器,免去使用开发板。 Wokwi提供基于浏览器的界面,您可以通过这种简单直观的方式快速开发一个…

【rust/esp32】在idf中使用embedded-graphics控制st7789 LCD屏幕

文章目录 说在前面模块详情准备工作开始编译烧录结果 说在前面 esp32版本:s3运行环境:esp-idf(std)开发环境:wsl2LCD模块:ST7789V2 240*280 LCDgithub地址:这里 模块详情 某宙的esp32s3开发板 某雪的1.69inch LCD模块…

【ESP-IDF】超级大循环看门狗

【ESP-IDF】超级大循环&看门狗设置ticks获取portTick_PERIOD_MS看门狗话不多说&#xff0c;我们直接来看代码&#xff1a; #include <stdio.h> #include "esp_log.h" #include "freertos/FreeRTOS.h" // 引入Free RTOS #include "freertos…

阿里云ECS搭建ESP32开发环境

陈拓 2021/01/29-2021/02/03 1. 概述 在《用乐鑫国内Gitee镜像搭建ESP32开发环境》 https://zhuanlan.zhihu.com/p/348106034 https://blog.csdn.net/chentuo2000/article/details/113424934 一文中我们用乐鑫在国内的Gitee镜像搭建了ESP32开发环境&#xff0c;下面我们将…

Win10配置ESP32-IDF+VSCode开发环境

一、安装包下载&#xff1a; Git&#xff1a;Git for WindowsPython&#xff1a;Download Python | Python.org以Windows x86-64开头的是 64 位的 Python 安装程序&#xff1b;以Windows x86开头的是 32 位的 Python 安装程序。ESP-IDF&#xff08;选择Offline版本&#xff09…

【ESP-IDF】使用GPIO点亮LED

【ESP-IDF】使用GPIO点亮LED点灯程序首先我们来扩展一个知识&#xff0c;在ESP-IDF中&#xff0c;库文件都保存在哪个位置呢&#xff1f; 以嵌入式开发中经典的点灯程序为例&#xff0c;点灯程序需要用到GPIO引脚&#xff0c;所以在ESP-IDF中&#xff0c;我们需要把其GPIO引脚…

【ESP-IDF】使用GPIO点亮LED

【ESP-IDF】使用GPIO点亮LED点灯程序首先我们来扩展一个知识&#xff0c;在ESP-IDF中&#xff0c;库文件都保存在哪个位置呢&#xff1f; 以嵌入式开发中经典的点灯程序为例&#xff0c;点灯程序需要用到GPIO引脚&#xff0c;所以在ESP-IDF中&#xff0c;我们需要把其GPIO引脚…

ESP32 ESP-IDF自定义组件

陈拓 2021/12/04-2021/12/04 1. 简介 1.1 官方文档 https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/build-system.html#component-cmakelists-files https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/api-guides/build-system.h…

ESP32 ESP-IDF使用TF(SD)卡

陈拓 2022/01/12-2022/01/13 1. 概述 官方文档 https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/api-reference/storage/sdmmc.html 官方例程 https://github.com/espressif/esp-idf/tree/bbe8aabca0/examples/storage/sd_card 有sdmmc和sdspi两个例程&…

ESP32 smart_config和airkiss配网

陈拓 2021/11/28-2021/11/30 1. 简介 官方例程&#xff1a; https://gitee.com/EspressifSystems/esp-idf/tree/master/examples/wifi/smart_config 此示例演示ESP32如何使用ESPTOUCH和微信airkiss连接到目标AP。 2. 开发环境 《Win10启用Linux子系统安装Ubuntu》 https:…

ESP32 ESP-IDF SNTP时间同步

陈拓 2022/01/15-2022/02/01 1. 概述 官方文档 https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/api-reference/system/system_time.html?highlightsntp 官方例程国内镜像 https://gitee.com/EspressifSystems/esp-idf/tree/master/examples/protocols/snt…

【ESP32+freeRTOS学习笔记之“ESP32环境下使用freeRTOS的特性分析(4-多核下的临界区)”】

目录关于临界区API的更改临界区API的工作过程使用临界区的限制和注意事项关于临界区API的更改 Vanilla FreeRTOS通过禁用中断来实现临界区域&#xff0c;这可以防止抢占式上下文切换和在临界区域提供ISR&#xff08;中断服务程序&#xff09;服务。因此&#xff0c;进入临界区…

esp-idf的内存管理——tlsf之上的封装

目录1 为什么要封装2 先看结构2.1 multi heapnote1note22.2 heap caps2.3 层次关系3 再看接口3.1 内存的申请3.2 内存的释放3.2 堆完整性检测3.3 其它参考1 为什么要封装 封装通常会降低效率&#xff0c;但能够带来诸如通用性提升等好处&#xff0c;idf在tlsf的基础上增加封装…

esp-idf的电源管理——软件的总体结构

idf的电源管理在软件上,从上到下可以分为三层: freeRTOS idle taskesp pmesp sleepesp sleep又可以进一步细分为两层,分别是软件sleep flow以及最终落实到硬件寄存器的rtc sleep。更具体的,函数调用关系如下: #mermaid-svg-WunrsW7XSArlvBnG {font-family:"trebuchet…

esp-idf的内存管理——esp系列芯片的内存

目录1 内存的分类2 内存的特性note1note2note3note4note53 软件对内存的描述4 内存的保留5 参考1 内存的分类 esp系列芯片的存储介质大体可以分为以下几类&#xff08;并非全系都有&#xff09;&#xff1a; SRAMROMSPI SRAMSPI FlashRTC fast memRTC slow mem 以S3为例&…

esp-idf的中断和异常管理——esp32 series的中断控制器

目录1 esp32 series的中断控制器2 基于riscv和xtensa的芯片中断模块的区别3 使用esp32 series的中断3.1 中断的配置3.2 中断的处理3.2 中断的清除1 esp32 series的中断控制器 和一些中断控制器固定了中断连线不同&#xff0c;esp32 series采用中断矩阵来连接中断源和中断输入引…

esp-idf的中断和异常管理——中断和异常的处理流程

目录1 中断/异常向量表1.1 xtensa1.2 riscv2 中断/异常的处理流程2.1 xtensa2.1.1 中断2.1.2 异常2.2 riscv2.2.1 中断2.2.2 异常3 注册中断/异常的handler3.1 xtensa3.1.1 异常3.1.2 中断3.2 riscv后记1 中断/异常向量表 1.1 xtensa 对于xtensa&#xff0c;中断/异常向量表借…

esp-idf的中断和异常管理——启航

1 目标 写关于esp-idf的中断和异常管理的博客有两个目标&#xff1a; 使自己能够熟练使用idf的中断和异常管理机制并了解其背后的实现帮助后来人节省时间&#xff0c;为esp-idf的推广做点微不足道的事情 2 规划 所有内容分为4部分&#xff1a; esp-idf的中断和异常管理——…

ESP32 ESP-IDF softAP

ESP32 ESP-IDF softAP 陈拓 2022/04/21-2022/04/21 1. 概述 此示例显示如何使用ESP的Wi-Fi SoftAP功能作为接入点。官方例程国内镜像 https://gitee.com/esp-idf/esp-idf/tree/master/examples/wifi/getting_started/softAP 2. 开发环境 《树莓派安装ESP32 ESP-IDF开发环境》…

ESP32 ESP-IDF ADC监测电池电压(带校正)

陈拓 2022/06/24-2022/06/24 1. 概述 此示例显示如何配置ADC1并读取连接到GPIO引脚的电压。引脚功能 在本例中&#xff0c;我们使用默认的ADC_UNIT_1&#xff0c;我们电池供电的应用中将ESP32开发板的电源连接到GPIO34&#xff0c;以监测电池电压。如果在应用程序中选择了其他…

【ESP32+freeRTOS学习笔记-(十)任务通知机制】

目录1、任务通知&#xff08;Task Notifications&#xff09;概念1.1 概念1.2 使用任务通知的优势1.3 无法使用任务通知的场景2、使用任务通知2.1 xTaskNotifyGive()2.2 ulTaskNotifyTake()2.3 使用任务通知代替信号量&#xff0c;方法12.4 使用任务通知代替信号量&#xff0c;…

Ubuntu构建ESP32 ESP-IDF开发环境(简约版)

陈拓 2022/09/08-2022/11/25 如果已经按照详细版本安装过ESP-IDF&#xff0c;再次安装时看简约版简洁明了。 Linux系统安装 《DELL台式机Linux ubuntu 20.04.5 安装》 https://blog.csdn.net/chentuo2000/article/details/126761906?spm1001.2014.3001.5501 登录Ubuntu主机…

ESP32 ESP-IDF MQTT

陈拓 2021/12/08-2021/12/08 1. 简介 官方文档 https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/protocols/mqtt.html 官方例程 https://gitee.com/EspressifSystems/esp-idf/tree/master/examples/protocols/mqtt/tcp ESP-MQTT sample applic…

树莓派安装ESP32 ESP-IDF开发环境

陈拓 2022/01/02-2022/01/05 1. 树莓派安装操作系统 因为ESP32 ESP-IDF现在还不能完全支持linux-arm64&#xff0c;在Ubuntu 64位系统上安装会出现下面的错误&#xff1a; tool esp32ulp-elf does not have versions compatible with platform linux-arm64 下面我们将ESP32…

esp-idf的内存管理——tlsf算法

目录1 最初还不是tlsf2 为什么要引入tlsf3 tlsf算法概览4 idf中使用的tlsf算法的设计与实现4.1 先看结构4.1.1 管理内存块的结构4.1.2 管理tlsf堆的结构4.2 优化内存块的元数据开销4.3 一二级位图索引的计算4.4 tlsf堆的创建与销毁4.4.1 tlsf堆的创建4.4.2 tlsf堆的销毁4.5 内存…

在ESP32上使用Arduino(Arduino as an ESP-IDF component)

目录 前言 原理说明 操作步骤 下载esp-arduino 安装esp-arduino 工程里配置arduino 1、勾选该选项&#xff0c;工程将作为一个标准的arduino程序工作 2、不勾选该选型&#xff0c;工程将作为一个传统的嵌入式项目开发&#xff0c; 前言 Arduino拥有丰富的各类库&#…

ESP32学习二-环境搭建(ESP-IDF V5.0,Ubuntu18.4)

一、准备事项 Ubuntu 18.04.5。具体安装可以参考如下链接。使用VMware安装Ubuntu虚拟机和VMware Tools_t_guest的博客-CSDN博客 乐鑫官方也提供了安装的相关操作。有兴趣可以参考。 快速入门 - ESP32 - — ESP-IDF 编程指南 v5.0.1 文档 注&#xff1a;提前说明&#xff0c;因…

【ESP32+freeRTOS学习笔记之“ESP32环境下使用freeRTOS的特性分析(3-多核环境下的调度)”】

目录1、不同核心上分别调度2、tick中断3、关于抢占4、关于同优级的任务按时间片调度5、空闲任务6、调度程序暂停7、启动和终止8、 禁用中断9、总结Vanilla FreeRTOS调度器是具有时间切片的固定优先级抢占调度器&#xff0c;这意味着&#xff1a; 每个任务在创建时都有一个固定的…

esp-idf的电源管理——电源管理组件

1 电源锁和动态频率切换 1.1 什么是电源锁 先概括的介绍一下IDF电源管理组件中的电源锁与动态频率切换。对主机CPU有了解的都知道,像Intel的酷睿处理器有个睿频功能,CPU非常聪明,可以在繁忙(需要高性能)的时候抬高频率,在不忙的时候降低频率,这样动态频率切换在保证用…

esp-idf的电源管理——freeRTOS的idle task

1 idle task的创建 idle task,顾名思义,就是在系统空闲,也即没有任何任务就绪的情况下执行的任务。为什么需要idle task呢,就我的理解来看,RTOS(不仅限于freeRTOS)跑起来之后,某个固定的时刻要么在中断上下文,要么在任务上下文(这里不考虑更复杂支持特权分离的操作系…

【ESP32】Ubuntu2004搭建espressif

文章目录 环境流程概述一、安装依赖二、下载SDK、管理工具1. 管理工具下载2. 下载SDK 三、安装toolchain、更新子库、配置SDK环境1. 替换下载源&#xff0c;安装虚拟环境等等2. 更新子库3. 配置SDK环境 四、复制例程验证环境问题汇总1. CMake 版本低2. 编译cmake源码时提示无g编…

【ESP32+freeRTOS学习笔记之“ESP32环境下使用freeRTOS的特性分析(2-多核环境中的任务)”】

目录1、ESP32的双核对称多处理SMP概念2、涉及任务task的特殊性2.1 创建任务的特殊函数2.2 xTaskCreatePinnedToCore&#xff08;&#xff09;函数的解释3、任务的删除4、总结1、ESP32的双核对称多处理SMP概念 最初的FreeRTOS&#xff08;以下简称Vanilla FreeRTOS&#xff09;…

ESP32 ESP-IDF BLE gatt_client

陈拓 2021/12/12-2021/12/13 1. 简介 官方文档 https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/api-reference/bluetooth/index.html 官方例程 https://gitee.com/EspressifSystems/esp-idf/tree/master/examples/bluetooth/bluedroid/ble/gatt_client E…

ESP-IDF编程指南

ESP-IDF 编程指南 - ESP32-C3 - — ESP-IDF 编程指南 v5.1 文档 (espressif.com) ESP-IDF 入门指南 | 乐鑫科技 (espressif.com) ESP-IDF 物联网开发框架 | 乐鑫科技 (espressif.com.cn)

ESP32 ESP-IDF LVGL移植和Wokwi仿真

陈拓 2023/10/21-2023/10/25 1. ESP-IDF开发环境 ESP-IDF的LVGL移植包括2个组件&#xff1a; lvgllvgl_esp32_drivers 目前lvgl_esp32_drivers在ESP-IDF 5.0以上版本编译通不过&#xff0c;所以我们安装ESP-IDF 4.4.5。 从https://dl.espressif.cn/dl/esp-idf/下载 安装说明…