当前位置: 首页 > news >正文

FreeRTOS事件标志组

一、什么是事件标志组

事件标志位:表明某个事件是否发生,联想:全局变量flag。通常按位表示,每一个位表示一个事件(高八位不算)

事件标志组:是一组事件标志位的集合,可以简单的理解事件标志组,就是一个整数。

  事件标志组本质是一个16位或32位无符号的数据类型EventBits_t,由configUSE_16BIT_TICKS决定(如果是0,代表是32位,其它情况下是16位)

尽管使用32位无符号的数据类型变量来存储事件标志,但其中的高8位用作存储事件标志组的控制信息,低24位用作存储事件标志,所以说一个事件组最多可以存储24个事件标志!

二、事件标志组相关API函数

函数描述
xEventGroupCreate()使用动态方式创建事件标志位
xEventGroupCreateStatic()使用静态方式创建事件标志位
xEventGroupClearBits()清零事件标志位
xEventGroupClearBitsFromISR()在中断中清零事件标志位
xEventGroupSetBits()设置事件标志位
xEventGroupSetBitsFromISR()在中断中设置事件标志位
xEventGroupWaitBits()等待事件标志位

1.创建事件标志组

EventGroupHandle_t xEventGroupCreate (void);

参数:

返回值:

成功,返回对应互斥量的句柄;

失败,返回NULL。

2.设置事件标志位

EventGroupHandle_t xEventGroupSetBits (EventGroupHandle_t xEventGroup,const EventBits_t uxBitsToSet);

参数:

xEventGroup:返回对应互斥量的句柄。

uxBitsToSet:指定要在事件组中设置的一个或多个位的按位值。

返回值:

设置之后事件组中的事件标志位值

3.清除事件标志位

EventGroupHandle_t xEventGroupClearBits (EventGroupHandle_t xEventGroup,const EventBits_t uxBitsToClear);

 

参数:

xEventGroup:返回对应互斥量的句柄。

uxBitsToSet:指定要在事件组中清除的一个或多个位的按位值。

返回值:

设置之后事件组中的事件标志位值

4.等待事件标志位

EventGroupHandle_t xEventGroupWaitBits (const EventGroupHandle_t xEventGroupconst EventBits_t uxBitsToWaitFor,const BaseType_t xClearOnExit,const BaseType_t xWaitForAllBits,TickType_t xTicksToWait);

 

相关文章:

  • LeetCode算法题(Go语言实现)_52
  • OpenCV 图形API(42)颜色空间转换-----将 BGR图像转换为 I420(YUV 4:2:0)格式函数BGR2I420()
  • 考研数据结构之图的应用:最小生成树、最短路径、拓扑排序与关键路径
  • 邮件自动回复助手(Rasa/SMTP)实现教程
  • 【HDFS入门】HDFS核心配置与优化指南概述
  • 【Pytorch之一】--torch.stack()方法详解
  • C#学习第15天:泛型
  • list.
  • 【工具变量】各地级市人口集聚及多中心程度数据集(2000-2023年)
  • Unity入门笔记(缘更)
  • 探索大语言模型(LLM):马尔可夫链——从诗歌分析到人工智能的数学工具
  • 高精求小数幂--高精度乘法+小数
  • k230学习笔记-疑难点(1)
  • 第19章:基于efficientNet实现的视频内容识别系统
  • 何小鹏在得意的笑
  • 第五章 SQLite数据库:3、SQLite 常用语法及使用案例
  • Lesson 12 Goodbye and good luck
  • 《TCP/IP网络编程》学习笔记 | Chapter 24:制作 HTTP 服务器端
  • C#winform主线程刷新UI时竟抛异常“从不是创建控件的线程访问它“
  • c++STL——vector的使用和模拟实现
  • 习近平就伊朗发生严重爆炸事件向伊朗总统佩泽希齐扬致慰问电
  • 王毅:为改革完善全球治理作出金砖贡献
  • 观察|英国航母再次部署印太,“高桅行动”也是“高危行动”
  • 美情报机构攻击中国大型商用密码产品提供商,调查报告公布
  • 中国航天员乘组完成在轨交接,神十九乘组将于29日返回地球
  • 持续更新丨伊朗港口爆炸事件已致561人受伤