
ESP32
文章平均质量分 96
ESP32
Projectsauron
昨夜西风凋碧树,独上高楼,望尽天涯路。
展开
-
ESP32-IDF 非易失存储 NVS
NVS(,非易失存储),意思是掉电后能依然能持久化保存数据。在我们应用 NVS 时,一般用于存储一些配置数据、状态数据等,一般不会用来存储存放大量的数据量。在嵌入式系统中,NVS 主要是在 Flash 进行键值对的存储。举个例子,假设我们要把东西存到 Flash 中,按照底层的操作习惯,我们要先指定一个地址,然后对这个地址执行擦除操作,然后才能写入;读取的时候也需要根据这个地址,然后指定读取长度。如果我们要存的项比较多,又在代码中比较分散,我们对 Flash 的地址就很难管理。原创 2024-10-21 00:18:18 · 4206 阅读 · 26 评论 -
ESP32-IDF 分区表
使用时要添加头文件。每片 ESP32-C3 的 flash 可以包含多个应用程序,以及多种不同类型的数据(例如校准数据、文件系统数据、参数存储数据等)。因此,我们在 flash 的 默认偏移地址 0x8000 处烧写一张分区表。分区表的长度为 0xC00 字节,最多可以保存 95 条分区表条目。MD5 校验和附加在分区表之后,用于在运行时验证分区表的完整性。分区表占据了整个 flash 扇区,大小为 0x1000 (4 KB)。因此,它后面的任何分区至少需要位于 (默认偏移地址) + 0x1000 处。原创 2024-10-20 08:18:19 · 5226 阅读 · 4 评论 -
ESP32-IDF 通用定时器 GPTimer
*!/*!/*!/*!struct {/*!/*!} flags;/*!clk_src:时钟源direction:计数方向(如递增、递减):计数器分辨率(工作频率),以 Hz 为单位,因此,每个计数滴答的步长等于()秒:GPTimer 中断优先级,如果设置为 0,驱动程序将尝试分配优先级相对较低的中断 (1,2,3)flags:设置为 1,定时器中断号可以与其他外设共享:设置为 1,驱动程序会在进入睡眠模式前备份并在恢复时恢复 GPTimer 的寄存器。原创 2024-10-19 08:33:28 · 4683 阅读 · 17 评论 -
ESP32-IDF USART 专题
typedef struct { int baud_rate; /*!< UART baud rate*/ uart_word_length_t data_bits; /*!< UART byte size*/ uart_parity_t parity; /*!< UART parity mode*/ uart_stop_bits_t stop_bits; /*!< UART s原创 2024-10-18 09:59:03 · 4336 阅读 · 9 评论 -
ESP32-IDF GPIO 专题
API 参考路径。ESP-IDF由多个组件组成,组件中包含专门为 ESP 芯片编写的代码或第三方库(即第三方组件)。对于某些第三方库,ESP-IDF提供专用的包装器和接口,以简化对第三方库的使用,或提高其与ESP-IDF其他功能的兼容性。某些情况下,第三方组件将直接呈现底层库的原始 API。原创 2024-10-17 08:58:05 · 5236 阅读 · 16 评论 -
ESP32-IDF 在 Ubuntu 下的配置
参考资料:官方文档:Linux 和 macOS 平台工具链的标准设置。参照官方文档,首先下载编译 所需要的软件包:二、获取 ESP-IDF首先创建一个目录用来作为 esp32 的工作目录:为了解决国内开发者从 Github 克隆 esp 相关仓库慢的问题,官方已将 esp-idf 和部分重要仓库及其关联的子模块镜像到了 jihu,这些仓库将自动从原始仓库进行同步。所以先获取官方的工具:(相关信息见 乐鑫开源/esp-gitee-tools)使用如下命令即可使用镜像的 URL:然后就可以克隆远程仓原创 2024-08-23 20:29:54 · 37857 阅读 · 15 评论