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

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

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

【晶心科技ADP-Corvette-T1開發(fā)板試用體驗】corvette T1的多任務調(diào)度學習

開發(fā)板試用精選 ? 來源:開發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-11-11 10:55 ? 次閱讀

本文來源電子發(fā)燒友社區(qū),作者:ankor, 帖子地址:https://bbs.elecfans.com/jishu_2292363_1_1.html

corvette T1多任務調(diào)度學習

本文嘗試實現(xiàn)corvette T1開發(fā)板的多任務協(xié)作功能

多任務協(xié)作功能可以使用freeRTOS、RT-thread一類實時操作系統(tǒng)實現(xiàn),也可以使用中斷、任務調(diào)度器來實現(xiàn)這些功能在arduino中也都支持,因為并不清楚T1開發(fā)板支不支持實時操作系統(tǒng)所以本次暫不采用實時操作系統(tǒng)來實現(xiàn)(英文太差,不太看的懂手冊QAQ,而且說明文檔好像也沒提這事?)。

最后我選擇了任務調(diào)度器來實現(xiàn)T1開發(fā)板下的多任務調(diào)度,主要用到TaskScheduler這個庫,在管理庫中搜索并安裝即可。

image-20220710153612129.png

先演示下其中的示例,打開個庫中的Scheduler_example00_Blink這個示例,操作步驟:文件→示例→TaskScheduler→Scheduler_example00_Blink,如下圖。

image-20220710154230957.png

修改LED_BUILTON為13

image-20220710154558688.png?

修改前
image-20220710154716104.png

修改后
然后上傳即可看到開頭視頻中的演示效果了。

多任務調(diào)度學習

然后又跟下面這位大佬的教程學習了多任務調(diào)度的操作(其實主要是學明白他的操作,自己還是太菜了QAQ)

(42條消息) Arduino|實現(xiàn)多任務操作,從此告別果奔6柒的博客-CSDN博客arduino多任務并行

首先是聲明自己的回調(diào)函數(shù)


void t1Callback();

void t2Callback(); void t3Callback();

然后創(chuàng)建任務也就是Task的創(chuàng)建


Task t1(2000, 10, &t1Callback);//創(chuàng)建任務對象,內(nèi)部參數(shù)為延遲時間,任務生存時間(s),任務的回調(diào)函數(shù)地址

Task t2(3000, TASK_FOREVER, &t2Callback);//回調(diào)函數(shù)主要是實現(xiàn)任務功能的 Task t3(5000, TASK_FOREVER, &t3Callback);

然后是調(diào)度器的創(chuàng)建,主要負責收納、執(zhí)行和刪除這些任務的


Scheduler runner;

然后根據(jù)對象runner區(qū)訪問類的成員函數(shù)


runner.init();

runner.addTask(name);//添加name任務,name為上面的Task 如t1或t2或t3 runner.deleteTask(name); runner.execute();

更多的細節(jié)可以參考上面那篇文章,最后是T1開發(fā)板使用該文提供的代碼跑出來的效果。


#include

// Callback methods prototypes void t1Callback(); void t2Callback(); void t3Callback();

//Tasks (delay_ms,times,func) Task t4(); Task t1(2000, 10, &t1Callback); Task t2(3000, TASK_FOREVER, &t2Callback); Task t3(5000, TASK_FOREVER, &t3Callback);

Scheduler runner;

void t1Callback() { Serial.print("t1: "); Serial.println(millis());


if (t1.isFirstIteration()) { runner.addTask(t3); t3.enable(); Serial.println("t1: enabled t3 and added to the chain"); } if (t1.isLastIteration()) { t3.disable(); runner.deleteTask(t3); t2.setInterval(500); Serial.println("t1: disable t3 and delete it from the chain. t2 interval set to 500"); }

}

void t2Callback() { Serial.print("t2: "); Serial.println(millis());

}

void t3Callback() { Serial.print("t3: "); Serial.println(millis());

}

void setup () { Serial.begin(115200); Serial.println("Scheduler TEST");

runner.init(); Serial.println("Initialized scheduler");

runner.addTask(t1); Serial.println("added t1");

runner.addTask(t2); Serial.println("added t2");

t1.enable(); Serial.println("Enabled t1"); t2.enable(); Serial.println("Enabled t2"); }

void loop () { runner.execute(); }

示例展示

image-20220710230703150.png

以上便是本文的所有內(nèi)容了

謝謝閱讀。

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

    關(guān)注

    0

    文章

    103

    瀏覽量

    18198
  • 開發(fā)板試用
    +關(guān)注

    關(guān)注

    3

    文章

    301

    瀏覽量

    2117
收藏 人收藏

    評論

    相關(guān)推薦

    全志T113-S3開發(fā)板網(wǎng)絡通信

    前言:在使用開發(fā)板的過程中經(jīng)常會使用到ssh、ftp等網(wǎng)絡服務,這時需要使用開發(fā)板的網(wǎng)絡功能。因此新拿到的開發(fā)板要先進行網(wǎng)絡測試,檢查網(wǎng)絡功能是否正常,保障后續(xù)開發(fā)搭建的網(wǎng)絡不出現(xiàn)問題
    的頭像 發(fā)表于 12-26 08:32 ?287次閱讀
    全志<b class='flag-5'>T</b>113-S3<b class='flag-5'>開發(fā)板</b>網(wǎng)絡通信

    有獎丨米爾 全志T536開發(fā)板免費試用

    米爾與全志合作發(fā)布的新品基于全志T536應用處理器的MYD-LT536-GK開發(fā)板免費試用活動來啦~~米爾提供了3塊價值750元的MYD-LT536-GK開發(fā)板發(fā)起
    的頭像 發(fā)表于 12-26 08:05 ?150次閱讀
    有獎丨米爾 全志<b class='flag-5'>T</b>536<b class='flag-5'>開發(fā)板</b>免費<b class='flag-5'>試用</b>

    如何用OpenCV進行手勢識別--基于米爾全志T527開發(fā)板

    本文將介紹基于米爾電子MYD-LT527開發(fā)板(米爾基于全志T527開發(fā)板)的OpenCV手勢識別方案測試。摘自優(yōu)秀創(chuàng)作者-小火苗米爾基于全志T527
    的頭像 發(fā)表于 12-13 08:04 ?758次閱讀
    如何用OpenCV進行手勢識別--基于米爾全志<b class='flag-5'>T</b>527<b class='flag-5'>開發(fā)板</b>

    FacenetPytorch人臉識別方案--基于米爾全志T527開發(fā)板

    本篇測評由電子工程世界的優(yōu)秀測評者“小火苗”提供。本文將介紹基于米爾電子MYD-LT527開發(fā)板(米爾基于全志T527開發(fā)板)的FacenetPytorch人臉識別方案測試。一
    的頭像 發(fā)表于 11-28 15:12 ?348次閱讀
    FacenetPytorch人臉識別方案--基于米爾全志<b class='flag-5'>T</b>527<b class='flag-5'>開發(fā)板</b>

    【RA8D1試用活動】RA8D1B-CPKCOR開發(fā)板移植linux

    【RA8D1試用活動】RA8D1B-CPKCOR開發(fā)板移植linux
    的頭像 發(fā)表于 11-16 01:02 ?267次閱讀
    【RA8D<b class='flag-5'>1</b><b class='flag-5'>試用</b>活動】RA8D<b class='flag-5'>1</b>B-CPKCOR<b class='flag-5'>開發(fā)板</b>移植linux

    【米爾-Xilinx XC7A100T FPGA開發(fā)板試用】+01.開箱(zmj)

    【米爾-Xilinx XC7A100T FPGA開發(fā)板試用】+01.開箱(zmj) 1.感謝 感謝米爾電子和電子發(fā)燒友提供的此次試用機會,可
    發(fā)表于 11-12 15:45

    搭載全志T527芯片的AvaotaA1開發(fā)板

    全志科技T527采用多核異構(gòu)設計,集成了CPU、GPU、NPU、DSP、MCU等各種計算單元,為各種復雜場景的多任務處理、專用數(shù)據(jù)處理以及算法應用提供了高效且靈活的解決方案,為生成式AI、人工智能算法的場景化落地提供了堅實的硬件基礎。
    的頭像 發(fā)表于 09-14 09:16 ?952次閱讀
    搭載全志<b class='flag-5'>T</b>527芯片的AvaotaA<b class='flag-5'>1</b><b class='flag-5'>開發(fā)板</b>

    Andes科技推出QiLai系統(tǒng)芯片和Voyager開發(fā)板

    高效能低功耗32/64位RISC-V處理器核心領(lǐng)導供貨商暨RISC-V國際協(xié)會創(chuàng)始首席會員Andes 科技(TWSE:6533)今日宣布推出QiLai (奇萊)系統(tǒng)芯片(SoC)和Voyager開發(fā)板,以進一步加速大規(guī)模RI
    的頭像 發(fā)表于 07-26 10:46 ?675次閱讀

    【米爾-全志T113-i開發(fā)板試用】米爾-全志T113-i開發(fā)板與modbus設備的連接和操作

    。 四、結(jié)論 1、米爾-全志T113-i開發(fā)板提供了豐富的接口和穩(wěn)定的操作系統(tǒng)環(huán)境,很適合工業(yè)控制軟件程序開發(fā); 2、依托l(wèi)ibmodbus這個modbus協(xié)議庫,對于linux應用下
    發(fā)表于 03-21 19:39

    SO14;SMD卷軸包,13“;Q1/T1產(chǎn)品定位包裝信息

    電子發(fā)燒友網(wǎng)站提供《SO14;SMD卷軸包,13“;Q1/T1產(chǎn)品定位包裝信息.pdf》資料免費下載
    發(fā)表于 02-22 09:30 ?0次下載
    SO14;SMD卷軸包,13“;Q<b class='flag-5'>1</b>/<b class='flag-5'>T1</b>產(chǎn)品定位包裝信息

    HSOP8;用于SMD的卷筒干式包裝,13“;Q1/T1產(chǎn)品方向包裝信息

    電子發(fā)燒友網(wǎng)站提供《HSOP8;用于SMD的卷筒干式包裝,13“;Q1/T1產(chǎn)品方向包裝信息.pdf》資料免費下載
    發(fā)表于 02-22 09:29 ?0次下載
    HSOP8;用于SMD的卷筒干式包裝,13“;Q<b class='flag-5'>1</b>/<b class='flag-5'>T1</b>產(chǎn)品方向包裝信息

    X2SON5;SMD卷軸包,7“;Q1/T1產(chǎn)品定位包裝信息

    電子發(fā)燒友網(wǎng)站提供《X2SON5;SMD卷軸包,7“;Q1/T1產(chǎn)品定位包裝信息.pdf》資料免費下載
    發(fā)表于 02-22 09:28 ?0次下載
    X2SON5;SMD卷軸包,7“;Q<b class='flag-5'>1</b>/<b class='flag-5'>T1</b>產(chǎn)品定位包裝信息

    雙向可控硅導通問題,去掉觸發(fā)信號,T1,T2極也斷開了

    multisim14 中用雙向可控硅MAC12HCDG仿真時,為什么觸發(fā)電流撤掉后,T1,T2極也斷開了燈泡不亮,電路如下圖,請幫忙看看電路是否有問題?
    發(fā)表于 02-04 13:24

    飛凌嵌入式T113-i開發(fā)板的調(diào)屏方法

    對于飛凌嵌入式T113-i開發(fā)板的調(diào)屏問題,需要按照以下步驟進行操作
    的頭像 發(fā)表于 01-29 16:25 ?1034次閱讀

    學習筆記分享|使用C庫函數(shù)控制ELF 1開發(fā)板的LED

    (ELF1/ELF1S開發(fā)板及顯示屏)在嵌入式Linux系統(tǒng)開發(fā)中,通過編程控制硬件資源是至關(guān)重要的技能之一,今天跟各位小伙伴分享一篇專注于介紹如何使用C庫函數(shù)控制ELF
    的頭像 發(fā)表于 01-19 11:12 ?588次閱讀
    <b class='flag-5'>學習</b>筆記分享|使用C庫函數(shù)控制ELF <b class='flag-5'>1</b><b class='flag-5'>開發(fā)板</b>的LED