那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

FreeRTOS用二進制信號量可以減少判斷語句的資源消耗

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

信號量另一種通常的用法是用于任務間的同步機制。

二進制信號量,可以想成是一個布爾類型,只有0 和 1。

兩個任務公用一個信號量,一個任務用于產生信號量,另一個任務使用此信號量。

比如:按鍵按下亮燈,再按一次燈滅。按鍵任務中按鍵按下時,將信號量置1。

亮燈任務中將信號量置0。 用二進制信號量可以減少判斷語句的資源消耗。

API函數:

SemaphoreHandle_t xHandler; 創建二進制Handler xHandler = xSemaphoreCreateBinary(); 創建一個二進制信號量 返回NULL,或者handler xSemaphoreGive(xHandler); 生產者+1 xSemaphoreTake(xHanlder, timeout); 消費者-1 返回pdPASS, 或者pdFAIL 示例如下:

938356fc-3120-11ed-ba43-dac502259ad0.png

93ae5e42-3120-11ed-ba43-dac502259ad0.png

93d3d820-3120-11ed-ba43-dac502259ad0.png

93edc762-3120-11ed-ba43-dac502259ad0.png

9409095a-3120-11ed-ba43-dac502259ad0.png

系統判斷,會占用CPU的很大資源,以上示例中判斷按鍵是否按下,可以用中斷處理。在中斷中必須調用函數名以FromISR結尾的函數。示例如下:

9427d542-3120-11ed-ba43-dac502259ad0.png

9447f6d8-3120-11ed-ba43-dac502259ad0.png

94593308-3120-11ed-ba43-dac502259ad0.png



審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10905

    瀏覽量

    213030
  • FreeRTOS
    +關注

    關注

    12

    文章

    484

    瀏覽量

    62398
  • API函數
    +關注

    關注

    0

    文章

    15

    瀏覽量

    8096

原文標題:FreeRTOS二進制信號量

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

收藏 人收藏

    評論

    相關推薦

    偏移二進制二進制補碼如何和實際數據對應,如何轉換?

    偏移二進制二進制補碼如何和實際數據對應,如何轉換,請哪位高手解惑
    發表于 01-16 06:01

    hex格式和二進制的區別

    HEX格式和二進制在多個方面存在顯著的區別。以下是對這兩者的對比: 一、定義與表示方式 HEX格式 : HEX,全稱為Intel HEX,是一種用于存儲和傳輸數據到嵌入式系統(如單片機)的文件格式
    的頭像 發表于 11-18 15:24 ?733次閱讀

    ASCII碼和二進制的轉換關系

    。ASCII碼使用7位二進制數來表示128個不同的字符,包括大小寫英文字母、數字0-9以及一些控制字符和標點符號。后來,ASCII碼被擴展到了8位,即ASCII-8BIT,可以表示256個不同的字符。 二進制
    的頭像 發表于 11-10 09:50 ?1900次閱讀

    二進制編碼器的精度與分辨率

    在數字電子系統中,二進制編碼器扮演著至關重要的角色。它負責將外部世界的模擬信號轉換為計算機可以理解的數字信號。精度和分辨率是衡量二進制編碼器
    的頭像 發表于 11-06 09:56 ?536次閱讀

    二進制編碼器在自動化領域的作用

    二進制編碼器是一種將二進制信號轉換為數字信號的電子設備,廣泛應用于自動化領域。 一、二進制編碼器的工作原理
    的頭像 發表于 11-06 09:53 ?462次閱讀

    二進制編碼器的故障排除指南

    二進制編碼器是一種將二進制信號轉換為數字信號的電子設備,廣泛應用于計算機、通信和自動化控制系統中。當二進制編碼器出現問題時,有效的故障排除是
    的頭像 發表于 11-06 09:49 ?411次閱讀

    二進制編碼器在機器人中的應用

    二進制信號,為機器人提供精確的狀態信息。 二進制編碼器的工作原理 二進制編碼器是一種將物理(如位置、速度等)轉換為
    的頭像 發表于 11-06 09:48 ?525次閱讀

    二進制編碼器的種類及特點

    二進制編碼器是一種電子電路,用于將二進制信號轉換為其他格式,如十進制、格雷碼等。以下是一些常見的二進制編碼器種類及其特點: 優先編碼器(Pr
    的頭像 發表于 11-06 09:47 ?670次閱讀

    二進制編碼器應用場景 二進制編碼器與模擬編碼器比較

    限性。 二進制編碼器概述 二進制編碼器是一種將輸入信號轉換為二進制代碼的設備。它通常用于數字系統中,將模擬信號或非
    的頭像 發表于 11-06 09:45 ?591次閱讀

    二進制編碼器工作原理 如何選擇二進制編碼器

    二進制編碼器是一種數字電路,它將輸入的二進制代碼轉換為對應的輸出信號。在數字系統中,編碼器用于將數據從一種形式轉換為另一種形式,以便于處理和傳輸。 二進制編碼器工作原理 輸入與輸出關系
    的頭像 發表于 11-06 09:44 ?1155次閱讀

    計算機采用二進制的原因不包括什么

    ,我們先簡要回顧一下為什么計算機會采用二進制。 物理實現的簡便性 :計算機的硬件,如晶體管,可以用兩種穩定狀態來表示信息,通常是0和1,這對應于二進制的兩個數字。這種二進制系統非常適合
    的頭像 發表于 09-04 17:03 ?714次閱讀

    二進制處理中的一些技巧

    二進制和十進制的處理中,有時候一些小技巧是很有用的。 1、把十進制數轉換成二進制數 (1)在MATLAB中有一個函數dec2bin,
    的頭像 發表于 07-05 11:51 ?629次閱讀

    二進制串行計數器工作原理是什么?

    在數字電路設計中,計數器是一種非常關鍵的組件,用于測量時間、計數事件或跟蹤狀態變化等。其中,二進制串行計數器作為一種常用的計數器類型,在多種應用場景中都發揮著重要作用。本文將對二進制串行計數器
    的頭像 發表于 05-28 15:52 ?964次閱讀

    為什么二進制移相鍵控信號會出現倒π現象?

    倒π現象是指在二進制移相鍵控(BPSK)信號的解調過程中,由于相位跳變導致的180°相位翻轉,使得接收到的信號與原始信號出現相反的比特表示。
    的頭像 發表于 05-21 18:28 ?4074次閱讀

    如何實現二進制和BCD碼數據的相互轉變?

    如何實現二進制和BCD碼數據的相互轉變? 二進制碼是將十進制數字表示為二進制數和十進制數的一種表示方法。在計算機系統中,
    的頭像 發表于 02-18 14:51 ?3873次閱讀
    赌场百家乐的玩法技巧和规则| 香港六合彩彩图| 百家乐官网特殊技巧| 老虎机控制器| 百家乐官网投住系统| 大发888游戏官网下载| 茅台百家乐官网的玩法技巧和规则 | 百家乐大赢家书籍| 环球代理| 线上百家乐信誉| 百家乐官网百乐发破解版| 七胜百家乐娱乐平台| 真人百家乐官网策略| 老虎机作弊器| 百家乐官网路单统| 金濠国际娱乐城| 百家乐赢钱公式1| 澳门百家乐官网娱乐城打不开| 狮威百家乐娱乐城| 百家乐官网官网网站| 立即博娱乐城| 现金百家乐信誉| 百家乐官网赌钱| 娱乐城官网| 怎样看百家乐路单| 如何玩百家乐官网游戏| 顶级赌场是骗人的吗| 太阳会百家乐现金网| 百家乐官网试玩全讯网2| 大发888官网sscbcgsesb| 百家乐最好的投注法| 澳门百家乐官网家用保险柜| 大发888游戏平台客户端下载| 百家乐斗视频游戏| 百家乐官网博彩技巧视频| 大发888下载并安装| 新濠百家乐官网的玩法技巧和规则 | 大发888娱乐城永乐厅| 百家乐假在哪里| 百家乐官网投注平台信誉排行| 网页棋牌游戏|