0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FreeRTOS創(chuàng)建事件標(biāo)志組

麥辣雞腿堡 ? 來源:嵌入式Linux系統(tǒng)開發(fā) ? 作者:嵌入式Linux系統(tǒng)開 ? 2023-07-06 17:23 ? 次閱讀

創(chuàng)建事件標(biāo)志組

圖片

3、設(shè)置事件位

圖片

圖片

4、獲取事件標(biāo)志組值

圖片

5、等待指定的事件位

某個任務(wù)可能需要與多個事件進(jìn)行同步,那么這個任務(wù)就需要等待并判斷多個事件位(標(biāo) 志),使用函數(shù) xEventGroupWaitBits()可以完成這個功能。調(diào)用函數(shù)以后如果任務(wù)要等待的事件位還沒有準(zhǔn)備好(置 1 或清零)的話任務(wù)就會進(jìn)入阻塞態(tài),直到阻塞時間到達(dá)或者所等待的事件位準(zhǔn)備好。函數(shù)原型如下:

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

具體的用法大家用到的時候可以百度,這里就不詳解了,只是大家在設(shè)計功能的時候,知道有這個東西。

noteFreeRTOS 中幾乎所有的 API 都分為在任務(wù)中還是在中斷處理函數(shù)中,要注意區(qū)分。同時一些 API 還分為使用動態(tài)內(nèi)存分配還是靜態(tài)內(nèi)存分配,一般是選擇動態(tài),因為使用方便、簡單。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18821

    瀏覽量

    298574
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    6715

    瀏覽量

    88314
  • FreeRTOS
    +關(guān)注

    關(guān)注

    12

    文章

    483

    瀏覽量

    61726
收藏 人收藏

    評論

    相關(guān)推薦

    FreeRTOS介紹與基礎(chǔ)任務(wù)創(chuàng)建

    本篇介紹FreeRTOS與基礎(chǔ)任務(wù)創(chuàng)建
    的頭像 發(fā)表于 09-26 09:00 ?2199次閱讀
    <b class='flag-5'>FreeRTOS</b>介紹與基礎(chǔ)任務(wù)<b class='flag-5'>創(chuàng)建</b>

    使用STM32CubeMX生成的FreeRTOS系統(tǒng)中,似乎沒有新封裝的事件標(biāo)志,怎么解決?

    使用STM32CubeMX生成的FreeRTOS系統(tǒng)中,似乎沒有新封裝的事件標(biāo)志,如果按照原生的FreeRTOS使用事件標(biāo)志
    發(fā)表于 03-22 08:34

    使用FreeRTOS系統(tǒng)事件標(biāo)志有些收不到是怎么回事?

    教下,使用FreeRTOS的的件標(biāo)志, 任務(wù)貌似有些標(biāo)志位收不到,是怎么回事啊 ? 比如事件標(biāo)志
    發(fā)表于 04-26 06:53

    轉(zhuǎn):freeRTOS事件學(xué)習(xí)

    像其他RTOS一樣,freeRTOS同樣有對事件標(biāo)志位的創(chuàng)建和處理,在中斷中可以通過事件傳遞信息給其他的任務(wù),那么如何創(chuàng)建事件
    發(fā)表于 08-12 18:29

    轉(zhuǎn):第18章 FreeRTOS事件標(biāo)志

    第18章FreeRTOS事件標(biāo)志 前面的章節(jié)我們已經(jīng)講解了任務(wù)管理和時間管理,從本章節(jié)開始講解任務(wù)間的通信和同步機(jī)制。首先講解任務(wù)間的通信和同步機(jī)制之一,事件標(biāo)志
    發(fā)表于 09-02 12:40

    轉(zhuǎn):第26章 FreeRTOS任務(wù)事件標(biāo)志

    本章節(jié)為大家講解FreeRTOS事件標(biāo)志的另一種實現(xiàn)方式----基于任務(wù)通知(Task Notifications)的事件標(biāo)志,這里我們
    發(fā)表于 09-08 06:48

    【NUCLEO-F412ZG試用體驗】FreeRTOS_事件標(biāo)志實現(xiàn)任務(wù)和中斷的同步

    使用事件標(biāo)志可以實現(xiàn)任務(wù)和任務(wù)之間以及任務(wù)和中斷之間的通信或者同步。首先說明,本例程參考了《安富萊_STM32-V5開發(fā)板_FreeRTOS教程(V1.0)》,是在上上期報告的基礎(chǔ)上,把按鍵中斷由
    發(fā)表于 12-28 21:19

    freertos中斷置位事件標(biāo)志輸出Error的解決辦法?

    新人求教,在原子里的程序加了置位標(biāo)志,串口輸出Error:..\FreeRTOS\portable\RVDS\ARM_CM3\port.c,680,但是不影響程序的運行,這個是什么原因
    發(fā)表于 06-18 09:00

    怎樣去設(shè)置FreeRTOS事件標(biāo)志的事件位呢

    事件標(biāo)志是什么意思呢?怎樣去設(shè)置FreeRTOS事件標(biāo)志的事件位呢?
    發(fā)表于 02-28 06:44

    FreeRTOS任務(wù)如何創(chuàng)建和刪除?

    FreeRTOS移植到Cortex-M3硬件平臺的文章中,我們已經(jīng)見過任務(wù)創(chuàng)建API,但那篇文章的重點在于如何移植FreeRTOS,本文將重點放在任務(wù)的創(chuàng)建和刪除API函數(shù)上面。 任
    的頭像 發(fā)表于 03-11 18:08 ?2807次閱讀

    FreeRTOS高級篇2---FreeRTOS任務(wù)創(chuàng)建分析

    FreeRTOS基礎(chǔ)系列《FreeRTOS系列第10篇---FreeRTOS任務(wù)創(chuàng)建和刪除》中介紹了任務(wù)創(chuàng)建API函數(shù)xTaskCreat
    發(fā)表于 01-26 17:42 ?23次下載
    <b class='flag-5'>FreeRTOS</b>高級篇2---<b class='flag-5'>FreeRTOS</b>任務(wù)<b class='flag-5'>創(chuàng)建</b>分析

    freeRTOS用于任務(wù)之間同步的手段事件標(biāo)志

    freeRTOS中還有一種可以用于任務(wù)之間同步的手段 — 事件標(biāo)志。
    的頭像 發(fā)表于 02-10 11:10 ?1420次閱讀

    FreeRTOS的事件標(biāo)志

    之前介紹了使用信號量來完成同步,但是使用信號量來同步的話,任務(wù)只能與單個的事件或任務(wù)進(jìn)行同步。有時候某個任務(wù)可能會需要與多個事件或任務(wù)進(jìn)行同步,此時信號量就無能為力了。FreeRTOS 提供了一個可選的解決方法,那就是事件標(biāo)志
    的頭像 發(fā)表于 02-10 15:58 ?1012次閱讀

    RA FreeRTOS任務(wù)創(chuàng)建

    ,開發(fā)環(huán)境e 2 studio完美支持FreeRTOS,無需額外手動移植。以下介紹如何用瑞薩e 2 studio創(chuàng)建RA系列MCU的FreeRTOS工程。 對于不熟悉瑞薩的FSP開發(fā)環(huán)境的工程師們,此文
    的頭像 發(fā)表于 03-10 14:35 ?1168次閱讀

    FreeRTOS事件標(biāo)志介紹

    1、事件位(事件標(biāo)志) 事件位用來表明某個事件是否發(fā)生,事件位通常用作事件標(biāo)志,比如下面的幾個例子: ● 當(dāng)收到一條消息并且把這條消息處理掉以后就可以將某個位(標(biāo)志)置 1,當(dāng)隊列中沒有消息需要處理
    的頭像 發(fā)表于 07-06 17:22 ?516次閱讀