Yuxxxxxxxxxx's Blog
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

ESP32-IDF 非易失存储 NVS

@toc 零、前言NVS(Non-volatile storage,非易失存储),意思是掉电后能依然能持久化保存数据。在我们应用 NVS 时,一般用于存储一些配置数据、状态数据等,一般不会用来存储存放大量的数据量。 在嵌入式系统中,NVS 主要是在 Flash 进行==键值对==的存储。举个例子,假设我们要把东西存到 Flash 中,按照底层的操作习惯,我
2024-10-21
嵌入式 > ESP32
#嵌入式 #ESP32

ESP32-IDF 分区表

[toc] 一、基本介绍使用时要添加头文件 #include "esp_partition.h"。 1、配置结构体1.1 esp_partition_t1234567891011typedef struct { esp_flash_t* flash_chip; /*!< SPI flash chip on which the par
2024-10-20
嵌入式 > ESP32
#嵌入式 #ESP32

ESP32-IDF 通用定时器 GPTimer

@toc 一、基本介绍1、配置结构体1.1 gptimer_config_t1234567891011121314typedef struct { gptimer_clock_source_t clk_src; /*!< GPTimer clock source */ gptimer_count_direction_t direction; /*!<
2024-10-19
嵌入式 > ESP32
#嵌入式 #ESP32

ESP32-IDF USART 专题

@toc 第一节主要介绍 ESP32-IDF 相关 API,在第二节介绍如何在 ESP32 上使用 USART,第三节为实例演示。 一、基本介绍 API 参考路径 esp-idf/components/esp_driver_uart/include/driver/uart.h。 1、配置结构体1.1 uart_config_t1234567891011121314typedef struc
2024-10-18
嵌入式 > ESP32
#嵌入式 #ESP32

ESP32-IDF GPIO 专题

[toc] 一、基本介绍 API 参考路径 esp-idf/components/esp_driver_gpio/include/driver/gpio.h。 ESP-IDF 由多个组件组成,组件中包含专门为 ESP 芯片编写的代码或第三方库(即第三方组件)。对于某些第三方库,ESP-IDF 提供专用的包装器和接口,以简化对第三方库的使用,或提高其与 ESP-IDF 其他功能的兼容性。某些情况
2024-10-17
嵌入式 > ESP32
#嵌入式 #ESP32

CMake 教程(三)添加库的使用要求

@toc 一、实例——添加库的使用要求目标参数的使用要求可以更好地控制库或可执行文件的链接和包含行,同时还能在 CMake 内部更好地控制目标的传递属性。利用使用要求的主要命令有: target_compile_definitions() target_compile_options() target_include_directories() target_link_directories()
2024-10-16
工具 > CMake
#CMake #工具

CMake 教程(二)添加库

@toc 在第一节 CMake 教程(一)初识 CMake 中,我们已经了解和实现了通过 CMake 来创建一个基本项目。本节我们将通过两个实例来学习如何在项目中创建和使用库。 一、实例一——创建库1、add_library要在 CMake 中添加库,就需要使用 add_library 命令来指定哪些源文件应组成库。 1add_library(<name> [<type>
2024-10-15
工具 > CMake
#CMake #工具

CMake 教程(一)初识 CMake

[toc] CMake 是个一个开源的跨平台自动化建构系统,用来管理软件建置的程序,并不依赖于某特定编译器,并可支持多层目录、多个应用程序与多个函数库。 CMake 通过使用简单的配置文件 CMakeLists.txt,自动生成不同平台的构建文件(如 Makefile、Ninja 构建文件、Visual Studio 工程文件等),简化了项目的编译和构建过程。 CMake 本身不是构建工具,而是
2024-10-14
工具 > CMake
#CMake #工具

Cortex-M 内核的 OS 特性

@toc 一、通用堆栈知识在前面讲解 STM32 启动文件的时候就已经提到过,有关堆栈大小的设置是在启动文件中设置的: Heap 主要用于 Malloc、Free,动态内存申请和释放。 Stack 也非常重要,程序编译后所包含的大量 PUSH 和 POP 指令操作,系统根据 SP(堆栈指针) 寄存器访问当前对应栈内存,通过栈保存临时数据。大部分的栈都是向下生长的(也有向上生长的)。M 内核的栈
2024-10-13
嵌入式 > STM32
#嵌入式 #STM32

DMA 详解

[toc] 一、简介DMA(Direct Memory Access,直接存储器访问)顾名思义,就是绕开 CPU 直接访问 Memory。在计算机中,相比 CPU,Memory 和外设的速度是非常慢的,因而在 Memory 和 Memory (或者 Memory 和外设)之间搬运数据,非常浪费 CPU 的时间,造成 CPU 无法及时处理一些实时事件。因此,工程师们就设计出来一种专门用来搬运数据的
2024-10-10
嵌入式 > STM32
#嵌入式 #STM32
12345…10

搜索

Hexo Fluid