创建事件标志组
3、设置事件位
4、获取事件标志组值
5、等待指定的事件位
某个任务可能需要与多个事件进行同步,那么这个任务就需要等待并判断多个事件位(标 志),使用函数 xEventGroupWaitBits()可以完成这个功能。调用函数以后如果任务要等待的事件位还没有准备好(置 1 或清零)的话任务就会进入阻塞态,直到阻塞时间到达或者所等待的事件位准备好。函数原型如下:
EventBits_t xEventGroupWaitBits( EventGroupHandle_t xEventGroup,
const EventBits_t uxBitsToWaitFor,
const BaseType_t xClearOnExit,
const BaseType_t xWaitForAllBits,
const TickType_t xTicksToWait );
具体的用法大家用到的时候可以百度,这里就不详解了,只是大家在设计功能的时候,知道有这个东西。
note:FreeRTOS 中几乎所有的 API 都分为在任务中还是在中断处理函数中,要注意区分。同时一些 API 还分为使用动态内存分配还是静态内存分配,一般是选择动态,因为使用方便、简单。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
嵌入式
+关注
关注
5082文章
19111浏览量
304872 -
数据
+关注
关注
8文章
7006浏览量
88955 -
FreeRTOS
+关注
关注
12文章
484浏览量
62151
发布评论请先 登录
相关推荐
使用STM32CubeMX生成的FreeRTOS系统中,似乎没有新封装的事件标志组,怎么解决?
使用STM32CubeMX生成的FreeRTOS系统中,似乎没有新封装的事件标志组,如果按照原生的FreeRTOS使用事件标志
发表于 03-22 08:34
转:第18章 FreeRTOS事件标志组
第18章FreeRTOS事件标志组 前面的章节我们已经讲解了任务管理和时间管理,从本章节开始讲解任务间的通信和同步机制。首先讲解任务间的通信和同步机制之一,事件标志
发表于 09-02 12:40
转:第26章 FreeRTOS任务事件标志组
本章节为大家讲解FreeRTOS事件标志组的另一种实现方式----基于任务通知(Task Notifications)的事件标志组,这里我们
发表于 09-08 06:48
【NUCLEO-F412ZG试用体验】FreeRTOS_事件标志组实现任务和中断的同步
使用事件标志组可以实现任务和任务之间以及任务和中断之间的通信或者同步。首先说明,本例程参考了《安富莱_STM32-V5开发板_FreeRTOS教程(V1.0)》,是在上上期报告的基础上,把按键中断由
发表于 12-28 21:19
freertos中断置位事件标志组输出Error的解决办法?
新人求教,在原子里的程序加了置位标志组,串口输出Error:..\FreeRTOS\portable\RVDS\ARM_CM3\port.c,680,但是不影响程序的运行,这个是什么原因
发表于 06-18 09:00
FreeRTOS任务如何创建和删除?
在FreeRTOS移植到Cortex-M3硬件平台的文章中,我们已经见过任务创建API,但那篇文章的重点在于如何移植FreeRTOS,本文将重点放在任务的创建和删除API函数上面。 任
FreeRTOS高级篇2---FreeRTOS任务创建分析
在FreeRTOS基础系列《FreeRTOS系列第10篇---FreeRTOS任务创建和删除》中介绍了任务创建API函数xTaskCreat
发表于 01-26 17:42
•23次下载
FreeRTOS的事件标志组
之前介绍了使用信号量来完成同步,但是使用信号量来同步的话,任务只能与单个的事件或任务进行同步。有时候某个任务可能会需要与多个事件或任务进行同步,此时信号量就无能为力了。FreeRTOS 提供了一个可选的解决方法,那就是事件标志组
RA FreeRTOS任务创建
,开发环境e 2 studio完美支持FreeRTOS,无需额外手动移植。以下介绍如何用瑞萨e 2 studio创建RA系列MCU的FreeRTOS工程。 对于不熟悉瑞萨的FSP开发环境的工程师们,此文
FreeRTOS事件标志组介绍
1、事件位(事件标志) 事件位用来表明某个事件是否发生,事件位通常用作事件标志,比如下面的几个例子: ● 当收到一条消息并且把这条消息处理掉以后就可以将某个位(标志)置 1,当队列中没有消息需要处理
评论