那曲檬骨新材料有限公司

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

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

3天內不再提示

FreeRTOS給任務傳遞兩個參數LEDpin和vTaskDelay

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

補充:上節漏掉一個知識點:任務中的延時要用vTaskDelay,這是當前線程延時函數,不要用delay。delay是整個系統延時函數。

繼續上節的延伸,從上篇文章的例子中可以看出兩個任務是讓兩個LED閃爍,創建的兩個任務task1和task2極其相似,除了傳遞的參數LED_PIN引腳不一樣,還有就是LED燈閃爍的時間不一樣vTaskDelay(1000)。

于是可以想到給任務傳遞兩個參數,LEDpin和vTaskDelay。 先理解以下知識:

結構體:是存放不同類型數據的容器。例如:

1053c99e-3051-11ed-ba43-dac502259ad0.png

1082872a-3051-11ed-ba43-dac502259ad0.png

10bd3636-3051-11ed-ba43-dac502259ad0.png

初始化結構體成員變量的方法有好幾種可以參考此連接:(58條消息) C語言結構體初始化的四種方法_ericbars的博客-CSDN博客_結構體初始化 typedef:給類型起別名。例如

1130c68c-3051-11ed-ba43-dac502259ad0.png

結構體“.”和“->”的區別: .

左邊是一個結構體變量;->左邊是一個指向結構體的指針。例如

1157c476-3051-11ed-ba43-dac502259ad0.jpg

理解了以上知識點后,傳遞多個參數是將參數定義為結構體成員變量,示例如下:

118e741c-3051-11ed-ba43-dac502259ad0.png

11c38ee0-3051-11ed-ba43-dac502259ad0.png

注意:

1)Arduino變量初始化要放在setup里,放到外邊,有可能會出錯。

2)全局變量內存的值不會刪除。局部變量的內存值在setup運行完后,會自動刪除,所以如果將聲明結構體變量LEDFLASH led1, led2;放到setup里,傳遞的參數每次都是隨機的,參數值會出錯。

3)freertos 語法規定的創建任務的函數參數必須是輸入void空指針 ,然后無返回的void類型。



審核編輯:劉清

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

    關注

    12

    文章

    484

    瀏覽量

    62398
  • Arduino
    +關注

    關注

    188

    文章

    6477

    瀏覽量

    187825
  • ESP32
    +關注

    關注

    18

    文章

    978

    瀏覽量

    17529

原文標題:FreeRTOS給任務傳遞多個參數(ESP32)

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

收藏 人收藏

    評論

    相關推薦

    如何把兩個數據返回調用函數

    已經知道函數會返回兩個數據,提前申請兩個元素的內存,并且把數組作為參數傳遞過去,把返回值放在數組中就行。 第三種,定義一全局的結構體變量,
    的頭像 發表于 01-08 10:15 ?98次閱讀

    freertos最多支持多少任務

    FreeRTOS是一輕量級的實時操作系統(RTOS),其設計初衷就是為了提供簡單、可靠且高效的實時任務管理。關于FreeRTOS最多支持多少
    的頭像 發表于 09-02 14:21 ?1184次閱讀

    freertos和rtos區別是什么

    FreeRTOS 和 RTOS(實時操作系統)是兩個不同的概念,但它們之間有緊密的聯系。FreeRTOS 是一特定的開源實時操作系統,而 RTOS 是實時操作系統的一般概念。 概念定
    的頭像 發表于 09-02 14:18 ?1507次閱讀

    如何使用freeRTOS兩個任務之間傳輸任務數據?

    /溫度。 我想創建一 CSV 文件來記錄一段時間內的數據。 我創建 I2C 任務的方法與示例中的 emFIlesystem 任務相同。 者都在運行,做著它們應該做的事情,但我覺得它
    發表于 07-03 07:55

    vTaskDelete()刪除正在打印日志的任務導致esp32卡死無法恢復要怎么處理?

    實際的應用場景是錄音的時候創建了一任務去讀i2s數據,放到一ringbuf里,然后主任務從ringbuf里取數據進行降噪編碼處理。 長跑測試發現設備在執行錄音時偶然會發生死機現象,
    發表于 06-17 07:48

    為什么在交流電橋中至少需要兩個可調參數

    在交流電橋的測量中,至少需要兩個可調參數的原因與電橋的工作原理、測量的準確性以及校準過程有關。
    的頭像 發表于 05-15 17:49 ?1997次閱讀

    請問一下FREERTOS只能創建4任務,修改哪個宏定義可以增加創建任務的數量?

    請問一下FREERTOS只能創建4任務,修改哪個宏定義可以增加創建任務的數量?解決方法:增加FREERTOS的堆。
    發表于 05-13 06:44

    淺析FreeRTOS任務調度器的三種調度算法和應用

    FreeRTOS在MCU領域應用非常廣泛,今天就大家講解一下FreeRTOS調度器中的三種調度算法,以及在瑞薩RZ/T2L MPU中的應用。
    的頭像 發表于 05-10 14:02 ?7815次閱讀
    淺析<b class='flag-5'>FreeRTOS</b><b class='flag-5'>任務</b>調度器的三種調度算法和應用

    基于STM32Cubemx創建FreeRTOS,創建UART任務遇到的兩個問題求解

    基于STM32Cubemx創建FreeRTOS,創建UART任務,經過測試發現有以下兩個問題: 1、串口波特率問題: 在STM32Cubemx中串口設置如下: /* USART3 init
    發表于 05-10 07:33

    freertos系統如何劃分任務

    正在看freertos方面的教程,想請教下如何劃分任務? 比如之前做的一數據采集板,用到了單片機以下功能: 1,單片機通過SPI1和ADC芯片通訊,同時還要通過SPI控制ADC電路部分的其他外圍
    發表于 05-08 07:16

    FREERTOS建了兩個任務,成功運行了,但每次運行2小時左右就死機的原因?

    FREERTOS建了兩個任務,成功運行了,但是,每次運行2小時左右就死機,這是什么情況,是堆棧小的原因嗎?
    發表于 05-06 08:22

    freertos任務創建,每一任務分配的內存是多大才好,怎么計算呢?

    小白剛剛接觸freertos,想問一下就創建任務而言,每一任務分配的內存是多大才好,怎么計算呢? 另外,每個任務的執行周期怎么確定?在
    發表于 04-23 06:39

    為什么CubeMX設計的FreeRTOS工程只能正常運行3任務

    用CubeMX4.20設計的FreeRTOS工程有六任務,出一任務優先級較低外,另外幾個都是較高優先級。發現只有3
    發表于 04-19 08:23

    STM32F103 FreeRTOS任務調度異常的原因?

    系統設置2任務,系統運行時出現一些異常現象,請問有沒有遇到過?是什么原因引起的? 方式1:系統運行正常 void Task1_Task(void * pvParameters) { while(1
    發表于 04-16 06:24

    FreeRTOS任務無故進入掛起狀態的原因?

    請教大家一問題,我子啊使用FreeRTOS的時候創建了一以太網的任務任務在使用的過程中被無故掛起,請問一下出現這種現象有哪幾種原因呢?
    發表于 04-09 07:20
    大发888王博被带走| 鸿博,| 真人游戏百家乐| 任我赢百家乐官网自动投注分析系统| 百家乐官网解析| 百家乐二号博彩正网| 网页百家乐游戏下载| 永利线上娱乐| 赌博中百家乐官网什么意思| 百家乐从哪而来| 万人迷百家乐的玩法技巧和规则| 星空棋牌下载| 百家乐官网神仙道官网| 免费百家乐官网统计工具| 太阳百家乐娱乐| 乐九百家乐官网游戏| 柬埔寨百家乐官网的玩法技巧和规则 | 百家乐官网游戏解密| 网上的百家乐官网怎么才能| 正品百家乐玩法| 马公市| 太阳百家乐官网娱乐| 太阳城的故事| 至尊百家乐官网奇热网| 钱百家乐取胜三步曲| 现金棋牌游戏| 最大的百家乐官网网站| 百家乐扑克筹码| 皇冠透注网| 娱乐城开户彩金| 博天堂百家乐官网官网| 玩百家乐去哪个娱乐城最安全| 马牌百家乐官网娱乐城| 澳门百家乐怎玩| 皇冠足球投注网| 百家乐庄闲比率| 六合彩现场开奖| 南宁百家乐官网的玩法技巧和规则 | 大发8888游戏平台| 百家乐官网兑换棋牌| 星期8百家乐的玩法技巧和规则|