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

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

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

FreeTRTOS可以通過哪些方法向接收任務(wù)更新通知呢

工程師鄧生 ? 來源:硬件會 ? 作者:硬件會 ? 2022-09-15 09:28 ? 次閱讀

每個RTOS任務(wù)都有一個32位的通知值,任務(wù)創(chuàng)建時,這個值被初始化為0。RTOS任務(wù)通知相當于直接向任務(wù)發(fā)送一個事件,接收到通知的任務(wù)可以解除阻塞狀態(tài),前提是這個阻塞事件是因等待通知而引起的。

發(fā)送通知的同時,也可以可選的改變接收任務(wù)的通知值。

可以通過下列方法向接收任務(wù)更新通知: 不覆蓋接收任務(wù)的通知值 覆蓋接收任務(wù)的通知值 設(shè)置接收任務(wù)通知值的某些位 增加接收任務(wù)的通知值

ca3ba788-3492-11ed-ba43-dac502259ad0.png

一個任務(wù)可以有多個通知,一個通知都有32bit的值,和一個state是8bit,state狀態(tài)確定有沒有被處理。

我們不能對stats進行直接的讀寫操作,是系統(tǒng)自動的,我們只能對notification value 進行操作。

直接任務(wù)通知是,任務(wù)A直接改變?nèi)蝿?wù)B的Notifiction的值。

設(shè)置NotifictionValue:

ca5ad7fc-3492-11ed-ba43-dac502259ad0.png

讀取NotifictionValue:

ca8547da-3492-11ed-ba43-dac502259ad0.png

舉例:

caaa29ec-3492-11ed-ba43-dac502259ad0.png

cada4b40-3492-11ed-ba43-dac502259ad0.png



審核編輯:劉清

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

    關(guān)注

    12

    文章

    483

    瀏覽量

    61851

原文標題:FreeTRTOS 直接任務(wù)通知

文章出處:【微信號:硬件會,微信公眾號:硬件會】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    freertos串口接收數(shù)據(jù)后如何發(fā)送給任務(wù)?

    最大長度? 如果用二值信號量,是不是就等于是中斷程序接收完后發(fā)送信號量通知任務(wù)處理數(shù)組?這樣的話,在任務(wù)處理過程中,串口又接收到新的數(shù)據(jù)怎
    發(fā)表于 04-18 06:36

    任務(wù)通知的問題如何解決

    在一個最高優(yōu)先級任務(wù)1里面發(fā)送通知:xTaskNotify((TaskHandle_t)BatTask_Handler,//接收任務(wù)通知的電
    發(fā)表于 07-13 10:36

    有什么方法可以查看FreeRTOS任務(wù)的運行狀態(tài)

    有什么方法可以查看FreeRTOS任務(wù)的運行狀態(tài)?怎樣去查看FreeRTOS任務(wù)的運行狀態(tài)
    發(fā)表于 11-02 07:59

    如何以及何時可以使用任務(wù)通知代替通信對象

    9.1本章介紹與范圍已經(jīng)看到,使用FreeRTOS的應(yīng)用程序被構(gòu)造為一組獨立的任務(wù),并且這些任務(wù)很可能必須彼此通信,以便它們可以共同提供有用的系統(tǒng)功能。通過中介對象進行通信本書已經(jīng)描述
    發(fā)表于 02-08 06:21

    使用FreeRTOS通知功能加速應(yīng)用執(zhí)行

    中讀取信息。當使用直接任務(wù)通知時,顧名思義,發(fā)送任務(wù)可以直接接收
    發(fā)表于 04-14 11:19

    有什么方法可以為TX隊列配置AIOP的擁塞通知嗎?

    :4306, QBMAN] The qbman_attr is not for ccgr configure ”。對于 RX 隊列,它似乎很好。有什么方法可以為 TX 隊列配置 AIOP 的擁塞
    發(fā)表于 04-17 06:55

    FreeRTOS的直接任務(wù)(消息)通知

    ? ? ? ? 之前分享了《FreeRTOS V10.4.0更新了哪些功能?》,今天就來詳細講述其中的一個知識點:FreeRTOS的直接任務(wù)(消息)通知,這樣做的目的就是減少RAM占用空間并加快執(zhí)行
    的頭像 發(fā)表于 01-07 09:37 ?4447次閱讀

    FreeRTOS —— 9.任務(wù)通知

    9.1本章介紹與范圍已經(jīng)看到,使用FreeRTOS的應(yīng)用程序被構(gòu)造為一組獨立的任務(wù),并且這些任務(wù)很可能必須彼此通信,以便它們可以共同提供有用的系統(tǒng)功能。通過中介對象進行通信本書已經(jīng)描述
    發(fā)表于 12-04 20:21 ?10次下載
    FreeRTOS —— 9.<b class='flag-5'>任務(wù)</b><b class='flag-5'>通知</b>

    FreeRTOS系列第14篇---FreeRTOS任務(wù)通知

    每個RTOS任務(wù)都有一個32位的通知值,任務(wù)創(chuàng)建時,這個值被初始化為0。RTOS任務(wù)通知相當于直接
    發(fā)表于 01-26 17:49 ?5次下載
    FreeRTOS系列第14篇---FreeRTOS<b class='flag-5'>任務(wù)</b><b class='flag-5'>通知</b>

    FreeRTOS任務(wù)通知簡介及實現(xiàn)

    每個系統(tǒng)任務(wù)都會有一個任務(wù)通知。然后每個任務(wù)通知都具有掛起或者未掛起的狀態(tài),以及32位的通知。常
    的頭像 發(fā)表于 12-06 16:24 ?1956次閱讀

    Free RTOS的任務(wù)通知-1

    每個任務(wù)都有一個32位的通知值,該值在創(chuàng)建任務(wù)時初始化為零。
    的頭像 發(fā)表于 02-10 16:05 ?824次閱讀
    Free RTOS的<b class='flag-5'>任務(wù)</b><b class='flag-5'>通知</b>-1

    Free RTOS的任務(wù)通知-2

    每個任務(wù)都有一個32位的通知值,該值在創(chuàng)建任務(wù)時初始化為零。
    的頭像 發(fā)表于 02-10 16:08 ?780次閱讀
    Free RTOS的<b class='flag-5'>任務(wù)</b><b class='flag-5'>通知</b>-2

    Free RTOS的任務(wù)通知-3

    每個任務(wù)都有一個32位的通知值,該值在創(chuàng)建任務(wù)時初始化為零。
    的頭像 發(fā)表于 02-10 16:11 ?813次閱讀
    Free RTOS的<b class='flag-5'>任務(wù)</b><b class='flag-5'>通知</b>-3

    FreeRTOS任務(wù)通知簡介

    就會解除這個任務(wù)的阻塞狀態(tài)。也可以更新接收任務(wù)任務(wù)通知
    的頭像 發(fā)表于 07-30 11:34 ?681次閱讀

    FreeRTOS任務(wù)通知通用發(fā)送函數(shù)

    發(fā)送任務(wù)通知 任務(wù)通知通用發(fā)送函數(shù) 任務(wù)任務(wù)通知發(fā)
    的頭像 發(fā)表于 07-30 11:43 ?680次閱讀
    FreeRTOS<b class='flag-5'>任務(wù)</b><b class='flag-5'>通知</b>通用發(fā)送函數(shù)