99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

FreeRTOS給任務(wù)傳遞兩個(gè)參數(shù)LEDpin和vTaskDelay

工程師鄧生 ? 來(lái)源:硬件會(huì) ? 作者:硬件會(huì) ? 2022-09-14 15:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

補(bǔ)充:上節(jié)漏掉一個(gè)知識(shí)點(diǎn):任務(wù)中的延時(shí)要用vTaskDelay,這是當(dāng)前線程延時(shí)函數(shù),不要用delay。delay是整個(gè)系統(tǒng)延時(shí)函數(shù)。

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

于是可以想到給任務(wù)傳遞兩個(gè)參數(shù),LEDpin和vTaskDelay。 先理解以下知識(shí):

結(jié)構(gòu)體:是存放不同類(lèi)型數(shù)據(jù)的容器。例如:

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

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

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

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

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

結(jié)構(gòu)體“.”和“->”的區(qū)別: .

左邊是一個(gè)結(jié)構(gòu)體變量;->左邊是一個(gè)指向結(jié)構(gòu)體的指針。例如

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

理解了以上知識(shí)點(diǎn)后,傳遞多個(gè)參數(shù)是將參數(shù)定義為結(jié)構(gòu)體成員變量,示例如下:

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

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

注意:

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

2)全局變量?jī)?nèi)存的值不會(huì)刪除。局部變量的內(nèi)存值在setup運(yùn)行完后,會(huì)自動(dòng)刪除,所以如果將聲明結(jié)構(gòu)體變量LEDFLASH led1, led2;放到setup里,傳遞的參數(shù)每次都是隨機(jī)的,參數(shù)值會(huì)出錯(cuò)。

3)freertos 語(yǔ)法規(guī)定的創(chuàng)建任務(wù)的函數(shù)參數(shù)必須是輸入void空指針 ,然后無(wú)返回的void類(lèi)型。



審核編輯:劉清

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

    關(guān)注

    12

    文章

    493

    瀏覽量

    64316
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6498

    瀏覽量

    192124
  • ESP32
    +關(guān)注

    關(guān)注

    21

    文章

    1017

    瀏覽量

    19250

原文標(biāo)題:FreeRTOS給任務(wù)傳遞多個(gè)參數(shù)(ESP32)

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【RA4L1-SENSOR】電壓檢測(cè)器第一個(gè)程序增加 FreeRTOS顯示量程0-3300 mV和量程0-15000mV]

    地方修改; 多個(gè)模塊同時(shí)訪問(wèn)時(shí)容易出現(xiàn)競(jìng)態(tài)條件; 不適用于多任務(wù)并發(fā)的系統(tǒng)。 在FreeRTOS中,隊(duì)列是一個(gè)線程安全的、先進(jìn)先出(FIFO)緩沖結(jié)構(gòu),用于任務(wù)之間或者
    發(fā)表于 07-11 10:53

    【RA4L1-SENSOR】04 用FreeRTOS重構(gòu)工程

    東西,我就混著使用了。任務(wù)(Task)是FreeRTOS官方的叫法,而線程(Thread)是在E2Studio中的寫(xiě)法。 在我們之前的裸機(jī)程序中,有兩個(gè)功能需要放在while死循環(huán)中:電容按鍵掃描以及
    發(fā)表于 06-16 22:28

    FreeRTOS讀取ADS1299數(shù)據(jù)有誤

    vTaskDelay(1) 在發(fā)送任務(wù)中:讀取隊(duì)列中的數(shù)據(jù)——發(fā)送到上位機(jī) 但是數(shù)據(jù)會(huì)出錯(cuò),正常數(shù)據(jù)的范圍是-1到1,用freertos就會(huì)出現(xiàn)超出正常范圍的數(shù)據(jù), 而在main函數(shù)的主循環(huán)中采集數(shù)據(jù)、濾波、發(fā)送到上位機(jī)就
    發(fā)表于 05-05 22:48

    stm32f103用freertos對(duì)一個(gè)采樣率為1kHz的傳感器,進(jìn)行采樣,數(shù)據(jù)出差

    您好,請(qǐng)問(wèn),用FreeRTOS的隊(duì)列對(duì)采樣率1khz的傳感器讀取數(shù)據(jù), 在采集任務(wù)中:通過(guò)spi讀取數(shù)據(jù)——濾波(ARM-DSP庫(kù))——將數(shù)據(jù)寫(xiě)入隊(duì)列——延時(shí)vTaskDelay(1) 在發(fā)送
    發(fā)表于 05-05 22:44

    兩個(gè)不同頻率晶振靠的近會(huì)怎樣

    晶振的振蕩本質(zhì)上是一種機(jī)械振動(dòng)(在壓電晶體層面)。當(dāng)兩個(gè)晶振靠得很近時(shí),它們的機(jī)械振動(dòng)可能會(huì)相互影響。一個(gè)晶振的振動(dòng)可能會(huì)通過(guò)電路板或者外殼等介質(zhì)傳遞給另一個(gè)晶振,從而改變另一
    的頭像 發(fā)表于 01-20 13:55 ?1614次閱讀
    <b class='flag-5'>兩個(gè)</b>不同頻率晶振靠的近會(huì)怎樣

    如何把兩個(gè)數(shù)據(jù)返回調(diào)用函數(shù)

    已經(jīng)知道函數(shù)會(huì)返回兩個(gè)數(shù)據(jù),提前申請(qǐng)兩個(gè)元素的內(nèi)存,并且把數(shù)組作為參數(shù)傳遞過(guò)去,把返回值放在數(shù)組中就行。 第三種,定義一個(gè)全局的結(jié)構(gòu)體變量,
    的頭像 發(fā)表于 01-08 10:15 ?408次閱讀

    DS90UB941AS是否支持帶兩個(gè)屏? 兩個(gè)屏是要求一樣的參數(shù)才行嗎?

    DS90UB941AS是否支持帶兩個(gè)屏? 兩個(gè)屏是要求一樣的參數(shù)才行么?
    發(fā)表于 12-12 06:07

    ad如何設(shè)置兩個(gè)元器件的距離

    在Altium Designer(簡(jiǎn)稱(chēng)AD)中設(shè)置兩個(gè)元器件之間的距離,主要是通過(guò)設(shè)置元器件間的安全間距(Clearance)規(guī)則來(lái)實(shí)現(xiàn)的。這個(gè)規(guī)則定義了元器件之間、元器件與走線之間以及其他設(shè)計(jì)元素
    的頭像 發(fā)表于 09-02 15:31 ?1.7w次閱讀

    freertos最多支持多少個(gè)任務(wù)

    FreeRTOS是一個(gè)輕量級(jí)的實(shí)時(shí)操作系統(tǒng)(RTOS),其設(shè)計(jì)初衷就是為了提供簡(jiǎn)單、可靠且高效的實(shí)時(shí)任務(wù)管理。關(guān)于FreeRTOS最多支持多少個(gè)
    的頭像 發(fā)表于 09-02 14:21 ?2254次閱讀

    freertos和rtos區(qū)別是什么

    FreeRTOS 和 RTOS(實(shí)時(shí)操作系統(tǒng))是兩個(gè)不同的概念,但它們之間有緊密的聯(lián)系。FreeRTOS 是一個(gè)特定的開(kāi)源實(shí)時(shí)操作系統(tǒng),而 RTOS 是實(shí)時(shí)操作系統(tǒng)的一般概念。 概念定
    的頭像 發(fā)表于 09-02 14:18 ?3007次閱讀

    freertos和rtthread哪一個(gè)更好

    在嵌入式系統(tǒng)開(kāi)發(fā)中,選擇合適的實(shí)時(shí)操作系統(tǒng)(RTOS)對(duì)于項(xiàng)目的成功至關(guān)重要。FreeRTOS和RT-Thread是兩個(gè)非常流行的開(kāi)源RTOS,它們各自具有獨(dú)特的特點(diǎn)和優(yōu)勢(shì)。 1. 簡(jiǎn)介
    的頭像 發(fā)表于 09-02 14:06 ?7116次閱讀

    觸發(fā)器的兩個(gè)穩(wěn)定狀態(tài)分別是什么

    觸發(fā)器作為數(shù)字電路中的基本邏輯單元,具有兩個(gè)穩(wěn)定狀態(tài),這兩個(gè)狀態(tài)通常用于表示二進(jìn)制數(shù)碼中的0和1。
    的頭像 發(fā)表于 08-12 11:01 ?3068次閱讀

    雙穩(wěn)態(tài)電路的兩個(gè)穩(wěn)定狀態(tài)是什么

    雙穩(wěn)態(tài)電路是一種具有兩個(gè)穩(wěn)定狀態(tài)的電子電路,廣泛應(yīng)用于數(shù)字電路、通信系統(tǒng)、存儲(chǔ)器等領(lǐng)域。 雙穩(wěn)態(tài)電路的基本概念 雙穩(wěn)態(tài)電路是一種具有兩個(gè)穩(wěn)定狀態(tài)的電路,即在沒(méi)有外部輸入信號(hào)的情況下,電路可以保持在
    的頭像 發(fā)表于 08-11 15:00 ?2641次閱讀

    雙穩(wěn)態(tài)觸發(fā)器的兩個(gè)基本性質(zhì)是什么

    雙穩(wěn)態(tài)觸發(fā)器(Bistable Trigger)是一種具有兩個(gè)穩(wěn)定狀態(tài)的邏輯電路,廣泛應(yīng)用于數(shù)字電路設(shè)計(jì)中。它具有兩個(gè)基本性質(zhì):記憶性和切換性。 一、雙穩(wěn)態(tài)觸發(fā)器的基本概念 1.1 雙穩(wěn)態(tài)觸發(fā)器
    的頭像 發(fā)表于 08-11 10:08 ?1387次閱讀

    請(qǐng)問(wèn)INA381如何理解其中比較器的兩個(gè)參數(shù)VIH和VIL?

    參數(shù)表中VIH的范圍是1.4V~6V,VIL為0~0.4V,這兩個(gè)參數(shù)的具體定義是什么,如何理解,以及如何測(cè)試。
    發(fā)表于 08-06 07:29