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

嵌入式面试——FreeRTOS篇(五) 事件标志组

本篇为:FreeRTOS事件标志组篇

1、事件标志组介绍

答:

        事件标志位:用一个位,来表示事件是否发生。

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

2、事件标志组的特点

答:

  • 它的每一个位表示一个事件(高8位不算)。
  • 每一位事件的含义,由用户自己决定,如:bit0表示按键是否按下,bit1表示是否接收到信息。
  • 这些位的值为1表示事件发生了,值为0表示事件未发生。
  • 任意任务或中断都可以读写这些位。
  • 可以等待某一位成立,或者等待多位同时成立。

3、事件标志组的标志变量

答:一个事件组就包含了一个EventBitst数据类型的变量,变量类型EventBitst数据类型的定义如下所示:

typedef TickType_t EventBits_t;
#if (configUSE_16_BIT_TICKS == 1)
    typedef uint16_t TickType_t;
#else
    typedef uint32_t TickType_t;
#endif
#define configUSE_16_BIT_TICKS 0

EventBits_t 实际上是一个 16 位或 32 位无符号的数据类型。

注意:虽然使用了32为/16位无符号的数据类型变量来存储事件标志,但其中的高8为作用是存储事件标志组的控制信息,低24位/8位的作用才是存储事件标志,所以说一个事件标志组最多可以存储24个事件标志!!!

24位事件标志组示例图:

4、事件标志组与队列、信号量的区别

答:

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

答:


http://www.kler.cn/news/340905.html

相关文章:

  • Spring Boot Starter Parent介绍
  • 初学python python与js差异
  • windows C++-移除界面工作线程(一)
  • AutoKey:开启高效办公与生活的自动化之门
  • 如何评估和选择适合企业的非结构化数据管理工具
  • mybatis-plus转换数据库json类型数据为java对象
  • 力扣题解( 规定时间内到达终点的最小花费)
  • 【LeetCode: 134. 加油站 | 贪心算法】
  • ​el-table去除表格表头多选框或者更换为文字​
  • 【嵌入式软件-STM32】STM32简介
  • 物联网:一种有能力重塑世界的技术
  • 毕业设计选题:基于ssm+vue+uniapp的科创微应用平台小程序
  • Vue集成echarts实现统计图表
  • 【公共祖先】二叉树专题
  • Clickhouse之更新表(ReplacingMergeTree)
  • k8s各类控制器详解
  • RecBole:AttributeError: module ‘ray.tune’ has no attribute ‘report’
  • Ansible 中的 Role
  • PyTorch搭建GNN(GCN、GraphSAGE和GAT)实现多节点、单节点内多变量输入多变量输出时空预测
  • 快速生成单元测试