esp32 event loop handle 代码

2023-05-16

#include <stdio.h>
#include <stdbool.h>
#include <unistd.h>

#include "esp_event.h"
#include "esp_timer.h"

#include "freertos/FreeRTOS.h"
#include "freertos/task.h"

ESP_EVENT_DECLARE_BASE(TIMER_EVENTS);  // declaration of the timer events family

enum {        // declaration of the specific events under the timer event family
	TIMER_EVENT_STARTED,               // raised when the timer is first started
	TIMER_EVENT_EXPIRY,         // raised when a period of the timer has elapsed
	TIMER_EVENT_STOPPED                // raised when the timer has been stopped
};

/* Event source periodic timer related definitions */
ESP_EVENT_DEFINE_BASE(TIMER_EVENTS);

void timer_started_handler(void *event_handler_arg, esp_event_base_t event_base,
		int32_t event_id, void *event_data) {
	   static int count = 0;
	    count++;
	printf("event_id: %ld , count : %d\n", event_id,count);
}

void app_main(void) {
	ESP_ERROR_CHECK(esp_event_loop_create_default());

	ESP_ERROR_CHECK(
			esp_event_handler_instance_register(TIMER_EVENTS, TIMER_EVENT_STARTED, timer_started_handler, NULL, NULL));
	ESP_ERROR_CHECK(
			esp_event_handler_instance_register(TIMER_EVENTS, TIMER_EVENT_STOPPED, timer_started_handler, NULL, NULL));

	while (1) {
		ESP_ERROR_CHECK(
				esp_event_post(TIMER_EVENTS, TIMER_EVENT_STARTED, NULL, 0, portMAX_DELAY));
		sleep(1);
		ESP_ERROR_CHECK(
				esp_event_post(TIMER_EVENTS, TIMER_EVENT_STOPPED, NULL, 0, portMAX_DELAY));
		sleep(1);

	}
//    while (true) {
//        printf("Hello from app_main!\n");
//        sleep(1);
//    }
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

esp32 event loop handle 代码 的相关文章

  • Embedded world conference 2015

    本文转载至 http www embedded world eu program html 一些相关的议程 Tuesday February 24 13 30 14 30 Keynote 1 Conference Keynote 09 30
  • esp32-S3专题二:内存1之RAM使用

    esp32 S3模块内部的存储分为ROM RAM SPRAM RTC内存 FLASH 种类很多 几乎可以不使用外接存储器的情况下 可以进行很多业务场景 十分有用 现在我们逐一讲解一下他们的作用和使用方法 一 ROM 384 KB 内部 RO
  • ESP32-CAM配置开发环境并烧录程序运行

    环境准备 ESP32 CAM开发板 烧录器 摄像头和一根USB线束连接电脑即可 Arduino下载完成后打开 不同版本的菜单栏可能稍微不同 仔细找即可 选择下面的选项 联网自动下载ESP32 CAM的 环境 端口和当前的一致即可 正常连接应
  • .NET 中的窗口句柄可以改变它的值吗?

    在 NET 进程的生命周期中 System Windows Forms Form 假设使用的主要形式Application Run form 实际上改变它的值 即如果在不同的进程中使用句柄的值 例如IntPtr handle User32
  • 关闭WinAPI HANDLE的正确方法(避免重复关闭)

    我有一些句柄 我需要关闭它 代码中的某些地方可能会关闭句柄 那么 这是关闭句柄的正确方法吗 HANDLE h if h INVALID HANDLE VALUE CloseHandle h h INVALID HANDLE VALUE 关于
  • 从 iOS 中的 Twitter 框架获取 Twitter 句柄

    我知道要在 iOS 5 中使用 Twitter 框架访问已配置的 Twitter 帐户 可以执行以下操作 ACAccountStore t account ACAccountStore alloc init ACAccountType ac
  • 标准错误?它是什么?它的常见用途有哪些?

    对句柄 STDERR 的工作原理感到好奇吗 让我们简单地说一下批处理文件以保持简单和集中 我知道许多编程语言都接受 STDERR 所以我不知道是否可能用途有所不同 或者所有编程语言是否有一个共同的功能 如果有人可以提供一些您所见过的常见用法
  • 如何修改子图位置以阻止它们相互覆盖?

    我正在尝试创建世界地图的子图 6 个图 并在其中写入选定的形状文件 我的问题在于我对子图的放置 它们互相覆盖 我从 stackoverflow 上的其他问题中了解到 这是因为轴以某种方式重叠 但我认为我创建的位置只是 并排 参见下面的代码
  • C# 获取句柄列表,AcessViolationException

    Info Net 4 5 测试于 Win7 64位 Win10 64位 虚拟盒 我正在尝试获取外部进程的句柄列表并将它们的名称作为字符串返回 以便我可以在之后关闭特定的进程 因此我使用 Win32API 编写了这个函数 它将检查句柄是否是我
  • Google iot MQTT - ESP32 首次连接,仅在 30m 后重新连接

    我正在使用 ESP32 与谷歌物联网云合作 我发送假值只是为了使用 MQTT 数据 PUB SUB 进行测试 显然我成功发布了值 有时 我无法重新连接到谷歌物联网 我不知道为什么它不断检查 wifi publishing 并且不检查 JWT
  • EndUpdateResource() 抛出错误 110 系统无法打开在输出位置打开 windowsexplorer 时指定的设备或文件

    仅当在 D test output 可执行文件复制到的位置 打开 Windows 资源管理器时 以下代码才会在 EndUpdateResource 调用上引发 110 错误 std ifstream in C Windows notepad
  • C++ 中的句柄是什么?

    有人告诉我 句柄有点像指针 但其实不是 它允许您保留对对象的引用 而不是对象本身 更详细的解释是什么 句柄可以是从整数索引到指向内核空间中资源的指针的任何内容 其想法是 它们提供了资源的抽象 因此您无需了解太多有关资源本身的信息即可使用它
  • 使用什么 ffmpeg 命令将无符号整数列表转换为音频文件?

    我有一个文件 其中包含大约四万个整数的列表 这些整数以空格分隔 每个整数的值都在 0 到 255 之间 这里是这个文件 https github com johnlai2004 sound project blob master integ
  • Winapi :: 获取可用句柄数

    我想创建长时间运行我的程序的测试 并不时输出可用句柄的计数 我怎样才能用一些 WINAPI 函数来做到这一点 这是一篇关于如何调试句柄泄漏的好文章http blogs technet com b yongrhee archive 2011
  • 清理使用自定义弱指针的一对多关系中的 nullptr

    我有一个一对多的地图类 MyMap1N
  • 托管 C++ ^ (句柄) --> 它是什么以及它与引用和指针有何关系

    托管 C 中对象的句柄有什么区别 such as System String str gcnew System String 和普通的 C 指针 另外它们与我们在 C 中的引用有何关系 您不是在谈论 较旧的 托管 C 而是在谈论 C CLI
  • 在 C++ 中从 HKEY 句柄确定注册表项的路径

    给定 Windows 注册表项的句柄 例如由 RegOpenKeyEx 设置的句柄 是否可以确定该注册表项的完整路径 我意识到在一个简单的应用程序中 您所要做的就是查找 5 或 10 行并阅读 但是在像我正在调试的复杂应用程序中 我感兴趣的
  • 在 MATLAB 中使用连续滑块的值

    我有点被困在这里了 我尝试阅读和实现一些简单的连续滑块脚本 像这个 https stackoverflow com questions 6032924 in matlab how can you have a callback execut
  • 如何使用Control.FromHandle?

    我看到一个名为 Control FromHandle 的方法 它 应该 允许您访问它 现在 我想使用这段代码尝试一下 DllImport user32 dll SetLastError true static extern IntPtr F
  • 无法从 GetProcessId(.. hWnd) (pInvoke) 中提取 processID

    我使用以下方法 DllImport kernel32 dll SetLastError true static extern int GetProcessId IntPtr hWnd 尝试获取正在运行的进程的 processId 我拥有的唯

随机推荐

  • 鲁棒控制——以静制动

    当今的自动控制技术都是基于反馈的概念 反馈理论的要素包括三个部分 xff1a 测量 比较和执行 测量关心的变量 xff0c 与期望值相比较 xff0c 用这个误差纠正调节控 制系统的响应 这个理论和应用自动控制的关键是 xff0c 做出正确
  • 自学电子技术的几个“要”

    学习电子技术 xff0c 基础构筑一定要牢靠 就说读图 xff0c 不能出错 xff0c 还要速度快 xff0c 要习惯成自然 检测元器件 xff0c 要坚持理论指导实践 xff0c 如测三极管 xff0c 理解了输入特性曲线及不同工作点在
  • 巧妙理解电气基础理论

    一 电与水相联系 电是看不见 摸不着 低压 的 xff0c 要想掌握它的特性 xff0c 全靠资料上的介绍和自己的想象 xff0c 确实难于理解 水是我们非常熟悉的 xff0c 它既看得见 xff0c 也模得着 xff0c 人们每天都离不开
  • 我们身边的人工智能应用

    人工智能是在计算机科学 控制论 信息论 心理学 语言学等多种学科相互渗透的基础发展起来的一门新兴边缘学科 xff0c 主要研究用用机器 xff08 主要是计算机 xff09 来模仿和实现人类的智能行为 xff0c 经过几十年的发展 xff0
  • C++资源之不完全导引

    C 43 43 资源之不完全导引作者 xff1a 曾毅 陶文 文章来源 xff1a csdn 点击数 xff1a lt script language 61 34 javascript 34 src 61 34 Article GetHit
  • 揭开C/C++中数组形参的迷雾

    揭开C C 43 43 中数组形参的迷雾作者 xff1a 乾坤一笑 文章来源 xff1a 本站原创 点击数 xff1a lt script language 61 34 javascript 34 src 61 34 Article Get
  • 瑞芯微rk1126 编译mp4v2记录 rk1126移植 ffmpeg X264

    项目需求需要录像存储为mp4文件 并且要支持H264 H265 我们之前在海思平台上用的是mp4v2 想着直接拿过来用 从github上 下载完mp4v2之后 新建一个build文件夹 然后cd到build文件夹新建一个build sh内容
  • 郁闷

    01 面对忧郁要处之泰然 xff0c 因为悲伤是必经的常态 02 找些事情做 xff0c 转移注意力 xff0c 例如散步 下棋 骑脚踏车 阅读等 03 从记忆中寻找快乐 04 找朋友顷诉 xff0c 加以发泄 05 大哭一场 xff0c
  • 2.14 STM32 串口传输最佳处理方式 FreeRTOS+队列+DMA+IDLE (二)

    紧接着上一篇文章 如何合理处理多个串口接收大量数据 此种方法 很厉害 很NB 首先 利用DMA 可节省大量CUP资源 其次 利用IDLE空闲中断来接收位置个数的数据 最后利用串口DMA环形数据的偏移量 长度 入队 出队处理数据 保证了任务的
  • 无人机/无人车仿真软件学习与实践---序言

    之前读博的时候一直使用团队自主设计的无人车在路上做实验 xff0c 验证感知代码时则使用公开数据集和车上实时录制的bag包进行 xff0c 对仿真器的掌握程度一直存在于听说有这么一个东西的程度 毕业之后 xff0c 新加入的团队主要搞的是无
  • stm32 nucleo f746zg串口中断接受数据入门

    使用串口1 将rx和tx对接 使用串口3 通过pc 来打印信息 main中的函数为 xff1a span class token function HAL UART Receive IT span span class token punc
  • stm32 hal iwip EchoClient demo 使用

    tcp echoclient c span class token comment 64 file LwIP LwIP TCP Echo Client Src tcp echoclient c 64 author MCD Applicati
  • esp32点灯程序

    使用的pin为D23 span class token macro property span class token directive hash span span class token directive keyword inclu
  • esp32串口发送

    串口2 xff0c rx 16 和 tx 17 span class token macro property span class token directive hash span span class token directive
  • esp32串口收发echo

    span class token comment SPDX FileCopyrightText 2010 2022 Espressif Systems Shanghai CO LTD SPDX License Identifier CC0
  • esp32定时器timer 代码

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • 瑞芯微RK1126平台 用FFmpeg 将H264 H265视频流保存为MP4文件

    之前尝试ffmpeg保存MP4文件没有成功 今天周末没事 尝试了下 解决这个问题了 主要是打开文件设置encoder和 发送数据时候 pts的设置 nbsp 打开文件的地方 pHandle gt is record ready store
  • esp32 连接wifi ap热点代码

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • esp32 tcp socket客户端收发代码

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • esp32 event loop handle 代码

    span class token macro property span class token directive hash span span class token directive keyword include span spa