1. 程式人生 > >uC/OS 的訊息佇列——uC/OS學習筆記(七)

uC/OS 的訊息佇列——uC/OS學習筆記(七)

1.訊息佇列的介紹

    使用訊息佇列可在任務之間傳遞多條訊息。訊息佇列相當於訊息郵箱集合,一個郵箱只能在任務間傳遞一條訊息,而訊息佇列則可以傳遞多條訊息。訊息佇列由三部分組成:事件控制塊、訊息佇列和訊息。

2.訊息佇列的操作

   a)建立訊息佇列:QSQCreate(void **start,INT16U size)。start是指標陣列的地址,size是陣列的長度

   b)請求訊息佇列:

         OSQPend(OS_EVENT *pevent,INT16U timeout,INT8U *err)。pevent是所請求的訊息佇列的指標;timeout是等待時限,err是錯誤資訊。

         OSQAccept(OS_EVENT *pevent) 。pevent是所請求的訊息佇列的指標。

   c)向訊息佇列傳送訊息:

         先進先出的方式:OSQPost(OS_EVENT *pevent,void *msg)。pevent是所請求的訊息佇列的指標;msg是訊息指標

         後進先出的方式:OSQPostFront(OS_EVENT *pevent,void *msg)。pevent是所請求的訊息佇列的指標;msg是訊息指標

        以廣播的方式:OSQPostOpt(OS_EVENT *pevent,void *msg,INT8U opt)。pevent是所請求的訊息佇列的指標;msg是訊息指標,opt是廣播選項。如果opt引數的值是“OS_POST_OPT_BROADCAST”,則凡是等待該訊息佇列的所有任務都會收到訊息。

   d)清空訊息佇列:OSQFlush(OS_EVENT *pevent)。pevent是所請求的訊息佇列的指標

   e)刪除訊息佇列:OSQDel(OS_EVENT *pevent)。pevent是所請求的訊息佇列的指標

    f)查詢訊息佇列:OSQQuery(OS_EVENT *pevent,OS_Q_DATA *pdata)。pevent是所請求的訊息佇列的指標,pdata是存放訊息狀態的結構。

相關推薦

uC/OS訊息佇列——uC/OS學習筆記

1.訊息佇列的介紹     使用訊息佇列可在任務之間傳遞多條訊息。訊息佇列相當於訊息郵箱集合,一個郵箱只能在任務間傳遞一條訊息,而訊息佇列則可以傳遞多條訊息。訊息佇列由三部分組成:事件控制塊、訊息佇列和訊息。 2.訊息佇列的操作    a)建立訊息佇列:QSQCreate

mysql學習筆記—— MySQL內連接和外連接

聚集函數 信息 _id left tro 做了 學習 作用 group MySQL內連接(inner join on) MySQL的內連接使用inner join on,它的效果跟使用where是一樣的,如果聯結的是兩個表,那麽需要左右的條件或者說字段是

Spring 學習筆記—— 切入點表達式

service string 出現 targe || 參數 public 例如 語法   為了能夠靈活定義切入點位置,Spring AOP提供了多種切入點指示符。 execution———用來匹配執行方法的連接點   

EF學習筆記:讀取關聯數據

取數據 microsoft image zha 手動 模型 取數 foreach ret 總目錄:ASP.NET MVC5 及 EF6 學習筆記 - (目錄整理) 本篇參考原文鏈接:Reading Related Data 本章主要講述加載顯示關聯數據; 數據加載分為以下三

Java語言基礎學習筆記

day tez lec mdk abd err .com mar mdm 烈7A茨諳9m繁5暗MChttp://www.zcool.com.cn/collection/ZMTg3NzE1Njg=.html 3馗iC蓖17握WM啦http://www.zcool.com.cn

python學習筆記函數

限制 指向 什麽 問題 www. img 值傳遞 在線的 comment 原鏈接:http://www.cnblogs.com/vamei/archive/2012/06/01/2529500.html#!comments 函數學習遇到了問題 1 #!/usr/bin/

PHP7 學習筆記如何使用zephir編譯一個擴展記錄

ring0 hub dev conf rep repo ase comm extension 一、zephir 編譯遇到的錯誤 安裝 git clone https://github.com/phalcon/zephir $ cd zephir $ ./instal

c++學習筆記- lambda表達式 叠代器 算法

tex 參數 p s 刷題 algo 叠代器 裏的 blog 而且 關於lambda表達式: 刷題的時候遇到一句代碼不懂: char ch = *it;auto it2 = find_if(it, b.end(), [ch](char x){ return x != ch

《Qt5 開發與實例第三版學習筆記

clu idg center ble mil detached pre tab etc 1 // 3.2 停靠窗口 QDockWidget類 2 setFeatures() 3 setAllowedAreas() 4 setWidget() 5 addDockW

Linux學習筆記環境變量PATH、cp命令、mv命令、文檔查看cat/more/less/h

查看 linux學習 文件覆蓋 echo txt 但是 學習 https ls命令 一、環境變量PATH對於環境變量,百度解釋為https://baike.baidu.com/item/%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F/1730949

筆記篇】最良心的計算幾何學習筆記

不一定 source spa hub 掃描 markdown 如何 urn 神奇 動態凸包 本文的github傳送門在這裏~ ====================================================================== 不會凸

hadoop學習筆記:Java HDFS API

on() apr name pin package 目錄 except 讀取 play 一、使用HDFS FileSystem詳解 HDFS依賴的第三方包:   hadoop 1.x版本:   commons-configuration-1.6.jar   comm

C Primer Plus學習筆記- C 控制語句:分支和跳轉

prim class wid int 但是 count 跳轉 ++ idt if 語句: if 語句被稱為分支語句(branching statement)或選擇語句(selection statement) if 語句的通用形式: if (expression)

FPGA學習筆記——FSMFinite State Machine,有限狀態機設計

fault mil 系統 time 編碼 代碼 ril esc 寫法   FPGA設計中,最重要的設計思想就是狀態機的設計思想!狀態機的本質就是對具有邏輯順序和時序規律的事件的一種描述方法,它有三個要素:狀態、輸入、輸出:狀態也叫做狀態變量(比如可以用電機的不同轉速作為狀態

Nodejs學習筆記—Node.js + Express 構建網站簡單示例

ren 結構 crypto 中間件 實現 cmd ews path releases 前言   上一篇學習了一些構建網站會用到的一些知識點:https://www.cnblogs.com/flyingeagle/p/9192936.html   這一篇主要結合前面講到的知識

官網英文版學習——RabbitMQ學習筆記Topic

fault 路徑 分享圖片 lazy ctrl+ hello sum byte[] style 在上一篇中使用直接交換器改進了我們的系統,使得它能夠有選擇的進行接收消息,但它仍然有局限性——它不能基於多個條件進行路由。本節我們就進行能夠基於多個條件進行路由的topi

ASP.NET Core 2 學習筆記路由

local quest urn AD term 執行 自動 routes code 原文:ASP.NET Core 2 學習筆記(七)路由ASP.NET Core通過路由(Routing)設定,將定義的URL規則找到相對應行為;當使用者Request的URL滿足特定規則條件

Python學習筆記

cookies 常用方法 .com 人的 https 初始化 面向 cache decode 用python代碼調用接口,使用urllib模塊,但是該模塊數據必須都是2進制的,比較麻煩 from urllib.request import urlopen from url

redux-form V.7.4.2學習筆記Field解析

ons nds rfi field 文字 class min 復雜 obj 引言 redux-form官方網站提供了操作form的許多API,其中最重要的無外乎三個:reduxForm(config:Object) 、props和 <Field/>。 <F

Python爬蟲學習筆記——智高考數據爬取

pid items bubuko strong eai res har href name 介紹 智高考是一個高考誌願網站,也是基於Ajax的。高中的時候我在wyz大神的幫忙下,嘗試過爬取信息來為填誌願做準備。但是當時沒有系統學習過爬蟲,幾乎都是靠大神帶飛,因此今天再次嘗試