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

实验67_任务通知替代事件标志组_多位设置.docx

更新时间:2026-09-13 12:03:27 大小:38K 上传用户:烟雨查看TA发布的资源 标签:FreeRTOS任务通知事件标志组多位设置xTaskNotifyWait 下载积分:2分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

实验 67:任务通知 替代事件标志组(多位设置)

实验说明

实验概述

任务通知的 eSetBits 操作模式可以将指定的位与目标任务的通知值进行按位或运算,实现类似事件标志组的功能。虽然任务通知的一对一特性限制了它的使用范围,但在只需要一个接收任务的场景中,它比事件标志组更高效。

实验原理

本实验扩展了之前的任务通知模拟事件标志组实验,使用 3 个事件设置任务分别设置不同的位,接收任务使用 xTaskNotifyWait() 等待并检查事件位状态。通过设置不同的位组合,实现多条件触发。

实验现象

3 个事件设置任务分别以不同频率设置事件位 012,接收任务检测到所有位都设置后执行操作。

完整代码

  c
#include "FreeRTOS.h"
#include "task.h"
#include <stdio.h>

#define BIT_EVENT_0     (1 << 0)
#define BIT_EVENT_1     (1 << 1)
#define BIT_EVENT_2     (1 << 2)
#define ALL_EVENTS      (BIT_EVENT_0 | BIT_EVENT_1 | BIT_EVENT_2)

TaskHandle_t xRecvTaskHandle = NULL;

/* 事件设置任务 0 */
static void vSetTask0(void *pvParameters)
{
    for (;;)
    {
        vTaskDelay(pdMS_TO_TICKS(2000));
        printf("[设置0] 设置 BIT_EVENT_0\r\n");
        xTaskNotify(xRecvTaskHandle, BIT_EVENT_0, eSetBits);


部分文件列表

文件名 大小
实验67_任务通知替代事件标志组_多位设置.docx 38K

全部评论(0)

暂无评论

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

  • 打赏
  • 30日榜单
  • 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

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

    用户:ccc6188

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

    用户:木集盒

推荐下载