推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

实验09_事件标志组_多事件同步.docx

资料介绍

实验 09:事件标志组 — 多事件同步

实验说明

实验概述

在复杂的嵌入式系统中,一个任务有时需要等待多个条件同时满足才能执行。例如,一个数据上报任务可能需要等待"传感器就绪"、"网络连接建立"和"数据采集完成"三个事件全部发生。使用多个二值信号量来处理这种场景会变得复杂且难以维护。FreeRTOS 的事件标志组(Event Group)提供了优雅的解决方案,它通过位操作的方式让一个任务可以同时等待多个事件。

实验原理

事件标志组是一个 32 位的变量,每个位代表一个独立的事件。任务可以等待任意一个事件(逻辑或)或所有事件(逻辑与)同时发生。事件标志组支持在等待时自动清除事件位,也支持手动清除。本实验创建三个事件设置任务,分别设置传感器就绪、数据处理完成和定时器到期三个事件,一个等待任务等待所有三个事件同时发生后才执行关键操作。

关键知识点

1. xEventGroupCreate() 创建事件标志组,最多 24 个可用事件位。

2. xEventGroupSetBits() 设置事件位,xEventGroupWaitBits() 等待事件位。

3. 支持"等待所有位"和"等待任意位"两种模式。

实验现象

三个事件设置任务分别在 2 秒、3 秒、4 秒后设置各自的事件位,等待任务在所有事件都就绪后立即执行。


部分文件列表

文件名 大小
实验09_事件标志组_多事件同步.docx 38K

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单
  • 21下载积分 打赏60.00元   3天前

    用户:gsy幸运

  • 21下载积分 打赏70.00元   3天前

    用户:铁蛋锅

  • 21下载积分 打赏65.00元   3天前

    用户:xzxbybd

  • 21下载积分 打赏60.00元   3天前

    用户:jh0355

  • 21下载积分 打赏60.00元   3天前

    用户:w178191520

  • 21下载积分 打赏20.00元   3天前

    用户:jh03551

  • 21下载积分 打赏20.00元   3天前

    用户:sun2152

  • 21下载积分 打赏20.00元   3天前

    用户:kk1957135547

  • 21下载积分 打赏25.00元   3天前

    用户:w1966891335

  • 21下载积分 打赏20.00元   3天前

    用户:xuzhen1

  • 21下载积分 打赏15.00元   3天前

    用户:x15580286248

  • 21下载积分 打赏25.00元   3天前

    用户:pcb

  • 21下载积分 打赏20.00元   3天前

    用户:bhacker

  • 21下载积分 打赏15.00元   3天前

    用户:liqiang9090

  • 21下载积分 打赏25.00元   3天前

    用户:有理想666

  • 21下载积分 打赏15.00元   3天前

    用户:godbox

  • 21下载积分 打赏15.00元   3天前

    用户:aetek

  • 21下载积分 打赏5.00元   3天前

    用户:mulanhk

  • 21下载积分 打赏5.00元   3天前

    用户:JuneLin61

推荐下载