目录1、背景1.1 参考资料2、ESP32 连接WIFI热点流程3、流程中各函数源码分析3.1 void tcpip_adapter_init(void)3.2 esp_err_t esp_event_loop_init(system_event_cb_t cb, void *ctx);3.2.1仔细看esp_event_loop_init源码3.2.1.1继续深入,查看esp_event_lo
代码#include "esp_log.h" #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "event_source.h" #include "esp_event_base.h" static const char* TAG = "user_event_loops"; //事件循环 esp_event
本文将介绍用c语言开发esp8266/32几种方法 主要有: 利用乐鑫原厂sdk在Windows下开发(安信可开发环境) 利用乐鑫原厂sdk在linux下开发 利用arduino开发(linux和win均可) 利用vscode开发(linux和win均可)Linux下环境搭建基于原厂sdk利用make方式网上很多教程,我觉得写都非常详细大家可以去看这几篇, 我在这里就着重讲一下利用pl
转载 2024-06-18 12:41:39
61阅读
提示:好记性不如烂笔头。本博客作为学习笔记,有错误地方希望指正 文章目录前言:一、任务延时vTaskDelay()二、任务延时vTaskDelayUntil()三、任务延时xTaskDelayUntil()四、获取任务优先级uxTaskPriorityGet()五、任务优先级设置vTaskPrioritySet()六、任务挂起vTaskSuspend()七、任务恢复vTaskResume()八、
目录1、不同核心上分别调度2、tick中断3、关于抢占4、关于同优级任务按时间片调度5、空闲任务6、调度程序暂停7、启动和终止8、 禁用中断9、总结 Vanilla FreeRTOS调度器是具有时间切片固定优先级抢占调度器,这意味着:每个任务在创建时都有一个固定优先级。调度器执行最高优先级就绪状态任务 调度器将周期性地在具有相同优先级就绪状态任务之间切换执行(以循环方式)。时间切片是由一
转载 2024-06-13 08:49:21
644阅读
前言想做网络小车这一想法起因于大二时候,有一次在抖音刷视频,看到了一个ID为一片枫叶大佬发一个视频,是一个从零开始制作网络小车全过程,从机械、硬件到软件,全部是他自己一个人完成,当时觉得很酷,感觉有点像是第二个“稚晖君”,膜拜。且在疫情时代,网络小车可以帮助人们出门买菜取快递等,降低一些接触风险,甚至往大了说可以在工业煤炭等行业,乃至抗震抢险救灾等不适合人直接探索地区,去代替人去完
ESP32开发之路(3)— 点亮第一个LED灯及按键输入本次开发是在Ubuntu下,使用模块是GOOUUU-ESP32,使用VSCode编辑项目。基于工程:ESP32开发之路(2)— HelloWorld工程分析和优化一、点亮第一个LED灯复制hello_world文件并命名为led_key,修改hello_world_main.c为app_main.c; 然后将工作区保存在led_key文件
本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时更改。 文章目录一 前言:二 前言:三 官方`API`说明:二 代码:其他:一 前言: PWM技术我们再熟悉不过了,只需要输出脉冲信号,即可调节灯具或者电机这些设备,在ESP32里面,官方把输出控制PWM功能控制器叫PWMC,因为是由他控制,见下图:[外链图片转存失
转载 2024-03-05 21:50:39
223阅读
文章目录1 HTTP Client 实验工程简介1.1 实验工程选择1.1.1 新建自己工程app-http-client1.1.2 直接使用官方例程esp_http_client1.2 统一资源定位符URL1.2.1 URL格式1.2.2 使用HTTPURL1.3 超文本传送协议 HTTP1.3.1 HTTP报文结构1.4 HTTP实验工具httpbin.org1.5 实验分析1.5.
转载 2024-04-15 11:44:35
163阅读
eddystonehttps://baike.baidu.com/item/Eddystone/18103061?fr=aladdin Eddystone是谷歌一个开放信标协议规范,旨在改善“基于邻近性体验”, 同时支持Android和iOS智能设备平台。一个开源蓝牙信标平台。 这个例子是扫描,弄错了,emm..主要文件结构esp_eddystone_api.h 解码API定义一些
转载 2024-05-14 13:59:39
164阅读
今天我们来说说ESP32 for Arduino存储分布以及启动过程。ESP32 for Arduino存储分布 ESP32有多个不同存储配置版本,本文以ESP32 4M FLASH为例进行分析。ESP32FLASH可以包含多个应用程序以及不同类型数据,因此在FLASH默认偏移地址0x8000处烧写了一个分区表,长度为0xC00字节,分区表数据后还保存着该表 MD5 校验和,用于验证分区
转载 2024-04-25 17:04:42
98阅读
.client_id = "XP001|securemode=3,signmethod=hmacsha1|", .username = "XP001&a1Swb0u95bV", .password = "df8e0bbf849758e0cedb9d5c5854c345598c52d7",};##### 1.2.2创建client 根据上一步配置信息来创建一个client。esp_mqt
  一·简介  本文介绍了ESP32系列在使用VSCODE+ESP-IDF v4.3下,波浪线警告问题根因和解决办法。 首先介绍了ESP-IDF 与VSCODE关系,之后介绍了c_cpp_properties.json文件作用以及配置方法。  二·正文   1.ESP-IDF与VSCODE   目前两种开发ESP32方式是ardu
转载 2024-05-21 08:48:30
171阅读
ESP8266 开发学习笔记_By_GYC 【更新 ets_printf 函数 使ESP_IDF 能够支持浮点数打印】在我们日常开发过程中,经常使用到一个功能就是串口打印功能。在ESP8266IDF框架中,提供了类似控制台printf操作,可以向串口打印一些信息,但是ESP8266printf函数被封装经过了简化,不支持浮点数格式控制符%f。IDF框架中拥有ets_printf函数
一 待机模式简介  在stm32低功耗模式中,待机模式可以实现系统最低功耗,在这种模式下,只需要2uA左右电流。三 待机唤醒程序分析实验现象:  将程序下载到开发板上后,LED灯会不断地亮灭,当按下KEY2键超过3s时,LED灯灭,标志着单片机进入待机模式,再按下KEY1键,这时唤醒单片机,LED又开始不断地亮灭亮灭。程序中用到一些宏定义#define
ESP32开发板可以通过官方工具链、编译工具、ESP-IDF配合文本编辑器进行编程,但这样方式有时比较麻烦,而且对新手极其不友好,因此经过简单配置,可使用Arduino对ESP32开发板进行编程、调试等,一键式方便又快捷。 我第一次使用官方方式尝试配置,因为啥也不知道嘛,折腾了一半天,连最简单程序都没跑起来,太打击信心了,建议熟悉后再去尝试这种方式。所用开发板:ESP-WROOM-32
sdm636-mtp驱动 NodeMCU is an interactive firmware, which allows running Lua interpreter on the ESP8266 microcontroller (ESP32 support is in development). Alongside with all the regular hardware in
转载 2024-10-15 20:39:37
26阅读
陈拓 2022/05/13-2022/05/151. 简介在《ESP32 ESP-IDF 获取GPS北斗模块经纬度和日期时间》一文中我们已经用ESP32获取了GPS北斗模块HT1818Z3G5L经纬度和日期时间数据。文本我们将经纬度和日期时间保存到TF卡中。每天保存一个文件,用日期作为文件名。模块大约1秒钟发送一次数据,我们不需要保存那么多数据,如果1分钟保存一次,1天有1440条记录。记录格
目录问题描述出现问题环境 解决过程解决方法原创不易,点个赞或者点个关注激励笔者分享更多优质原创内容吧!开源万岁!问题描述配置ESP32定时器成功后(在配置函数中写串口提示代码,串口正常输出配置成功提示)Serial.println("start timer"); 表明定时器配置成功 但是在定时器触发中断调用中断函数时,ESP32重启总体表现为定时器中断触发时,ESP32重启串
ESP-IDF 项目中添加 .c 和 .hESP-IDF(Espressif IoT Development Framework)是一个用于开发基于 ESP32ESP8266 微控制器嵌入式应用程序框架。在 ESP-IDF 项目中添加新 .c 和 .h 文件是很常见,但要确保这些文件能够正确地被编译和链接到项目中,需要适当地配置 CMakelists.txt 文件。CMakeli
  • 1
  • 2
  • 3
  • 4
  • 5