文章目录目的SDMMC方式常用方法使用示例SPI方式常用方法使用示例注意事项总结 目的对于嵌入式设备来说SD卡也是个比较好用的功能,比如用来存放设备的配置文件、日志文件、执行脚本、应用数据等。ESP32有两种使用SD卡的方法,一种是使用SPI接口访问SD卡,另一种是使用SDMMC接口访问SD卡 。Arduino core for the ESP32中SPI方式占用4个IO口,SDMMC方式占用6
转载 2024-04-23 12:56:30
456阅读
竞争冒险"(Race Condition)是并发编程中的一个常见问题,它发生在两个或更多的进程或线程尝试同时访问和修改共享资源时,而由于处理器调度的非确定性,导致结果不可预测。要防止竞争冒险,可以采取以下策略:互斥锁(Mutexes):互斥锁可以用来保护共享资源,确保在任何时候只有一个任务可以访问这些资源。当一个任务获得互斥锁时,其他任务必须等待,直到锁被释放。信号量(Semaphores):信号
Arduino Uno R3 - 引脚图Arduino Uno R3 - 详细参数    Arduino Uno R3 - 存储  Arduino的存储空间即是其主控芯片所集成的存储空间。也可以通过使用外设芯片的方式来扩展Arduino的存储空间。  Arduino UNO的存储空间分三种:Flash,容量为32 KB。其中0. 5 KB作为BOOT区用于储存引导程序,实现通过串口下载程序的功能;
转载 2024-10-17 20:57:28
379阅读
【前言】 许多用户在使用 ESP32 做开发的时候,都会碰到如何选择外接 Flash 的难题,因为不同厂商的 Flash 存在很多差异,Flash 支持的工作模式也不同。【如何给 ESP32 选择外接 Flash】 用户在选择 Flash 时,需要注意以下几个方面: * 工作电压 * 容量 * 工作模式 * 工作环境温度 1. 工作电压 这是一个用户在选择 Flash 时很容易忽视但又非常重要的参
驱动程序分为两类: 一个是 Kernel(内核) 模式驱动,另一个是 Windows (用户窗口层)模式驱动。这两种模式本质是相同,但细节不同。本文介绍的是内核模式驱动和驱动程序的安装与使用。驱动程序同普通的 .exe,.dll 一样,都属于 PE 文件,而且都有一个入口函数。但 .exe 中,入口函数是 main() / WinMain() 和 Unicode 的 wmain() / wWinm
实验使用资源:正点原子F1USART1:PA9P、A10(串口打印调试)USART3:PB10、PB11(WiFi模块)DHT11:PG11(采集数据、上报)LED0、1:PB5、PE5(介绍命令,控制亮灭)显示屏(可有可无)HAL库创建工程ESP8266固件烧录阿里云创建物模型模块移植这里主要说usart模块和WiFi相关模块,其他模块的驱动很简单,不再描述usart模块将【stm32f1xx_
Arduino ESP32 flash数据存储结构?分区表官方文档:《分区表》✨想了解ESP32 flash数据存储结构需要从分区表开始了解。一点类似一台电脑上挂载的硬盘一样。分区表保存 SPI flash 各区信息,包括引导程序、各种应用程序二进制文件、数据及文件系统等/*在Arduino环境中使用的flash布局 |----|-------|--------|-------|------
前面的7节课把开发板上基本的外设都测试过一边,接下来马上就要进入wifi和蓝牙应用的测试了 在此之前,还需要把掉电数据保存的功能给实现,在STM32中,可以使用内部的flash或者有些自带的EEPROM 在 ESP32-C3 上,使用非易失性存储 (NVS) 库的方式,进行简单数据的掉电保存 ... 分区表章节添加分区表修改方法链接 2
先看效果,创建四个滑动控件来控制图片的颜色和对比度,增加一个FontAwesome字体图标 图片(lv_img):图像是从Flash(作为数组)或从外部作为文件显示的基本对象。图像也可以显示符号( LV_SYMBOL_... )。使用 图像解码器 接口,也可以支持自定义图像格式。零件和样式图像只有一个称为 LV_IMG_PART_MAIN 的主要部
1.NVS是什么以及作用是什么?                NVS总的来说,就是非易失性存储,类似MCU EEPROM   表和键值相对应,表为句柄。利用句柄找对应的key值          &
AD转化。        所谓AD,其实就是将模拟量转化为数字量的技术。我们今天用自己设计的分压模块来测试这一转化过程。目录一、ESP32中的ADC口二、Arduino实现ESP32的AD转化1.代码实现        2.硬件检测三、结果验证一、ESP32
主要内容本章我们来分析SDK中的Makefile,同时学习如何创建自己的源码文件夹。预备知识一份代码工程编译成二进制可执行文件,需要经过四个步骤:预处理、编译、汇编和链接。进行编译需要有编译器,Linux环境下使用的是gcc,而对应的,ESP8266使用的编译器是xtensa-lx106-elf-gcc。在后面分析Makefile中,我们就会看到该编译器。下面是其他一些工具的含义:ar:用于建立或
陈拓 2022/05/13-2022/05/151. 简介在《ESP32 ESP-IDF 获取GPS北斗模块的经纬度和日期时间》一文中我们已经用ESP32获取了GPS北斗模块HT1818Z3G5L的经纬度和日期时间数据。文本我们将经纬度和日期时间保存到TF卡中。每天保存一个文件,用日期作为文件名。模块大约1秒钟发送一次数据,我们不需要保存那么多数据,如果1分钟保存一次,1天有1440条记录。记录格
这个实验的功能是使用乐鑫提供的 nvs 库去对 spi flash 的读写。 这个实验的代码为工程“3_9_nvs”目录。3.9.1. 实验内容(1) 学习 NVS 库函数接口 (2) 学习 NVS 存储/读取多种类型数据3.9.2. ESP32 NVS 功能介绍NVS总的来说,就是非易失性存储,类似MCU EEPROM,但实际上调用ESP32这些函数,数据是存储在FLASH中的。它的管理方式类似
项目场景:之前为了方便 SDDC 协议使用,我自己写了一个 SDDC 的 SDK, 具体详见:同人逼死官方系列!基于sddc 协议的SDK框架 sddc_sdk_lib 解析 和 同人逼死官方系列 从 DDC 嗅探器到 sddc_sdk_lib 的数据解析 ,但是当时对 cjson 的使用还不是很熟悉,导致出现了一个内存泄露的问题,导致了ESP32运行一段时间后无法收到报文。问题描述在频繁收到消息
转载 2024-07-12 17:31:07
167阅读
ESP32 学习笔记                                &nb
1“洋洋洒洒”的写了那么多的内容,看起来很丰富;但其实没有进入主题。然而它们却是实现与理解操作系统的必要步骤与开端。纯粹的操作系统的理论总是让人无法身临其境的去理解而且实用性不是很强 ,而且我觉得操作系统的相关理论都是经验的总结,而无其他,实际中使用的往往是实践跑在前面,然后被总结为理论,最后被无休止的进行复制。这样确实一个好的软件发展模式,不断以代码的方式沉淀,从而让软件发
快速导读1、前言2、esp32_arduino_sqlite3_lib 库3、硬件说明4、API说明4.1 sqlite3_initialize —— 初始化Sqlite数据库引擎4.2 sqlite3_open —— 打开或创建一个 SQLite 数据库文件4.3 sqlite3_exec —— 执行 SQL 命令4.4 sqlite3_free —— 释放内存4.5 sqlite3_clos
转载 2024-06-14 17:31:15
328阅读
使用rust(no-std)环境和esp-hal库实现SSD1306显示屏(128x64)显示bmp图片. 摘要使用rust(no-std)环境和esp-hal库实现SSD1306显示屏(128x64)显示bmp图片.平台信息esp32(模组:ESP32-WROOM-32D)(xtensa lx6)(xtensa-esp32-none-elf)rust开
转载 2024-07-22 14:10:37
172阅读
1、本示例适合于ESP8266和ESP32的OTA升级,使用官方的RTOS SDK3的框架编程,用户只要给出URL,代码自动解析出域名、IP、端口、文件路径等信息,然后通过HTTP请求下载固件。2、本人测试固件放到阿里云对象存储OSS中,可以参考以下链接说明。或者自己搭建局域网服务器。阿里云对象存储上传文件_dear_Wally的博客3、user_fota.c#include "user_fota
  • 1
  • 2
  • 3
  • 4
  • 5