一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

STM32單片機(jī)裸機(jī):實(shí)現(xiàn)多任務(wù)設(shè)計(jì)實(shí)現(xiàn)

STM32嵌入式開發(fā) ? 來源:STM32嵌入式開發(fā) ? 2023-11-21 15:02 ? 次閱讀

問題

單片機(jī)開發(fā)過程中,隨著任務(wù)的增多,完全等待一個(gè)任務(wù)完成后,再去執(zhí)行下一個(gè)任務(wù)的弊端越發(fā)明顯。

wKgZomVcViSAOO1TAAAT-Wquh3E708.jpg

在while(1)循環(huán)中實(shí)現(xiàn)LED 周期閃爍,提示系統(tǒng)正常運(yùn)行。

代碼實(shí)例:

wKgZomVcViSAPAWxAAANnsgslN4356.jpg

采用時(shí)間分割思想,去處理不同的任務(wù),每次執(zhí)行1ms,到500次時(shí),執(zhí)行相應(yīng)功能。

代碼

定義結(jié)構(gòu)體:

Delay:時(shí)間片執(zhí)行時(shí)長(zhǎng);

Period:任務(wù)執(zhí)行周期。

wKgaomVcViSAbGFiAAAkC1NSq34161.jpg

添加(創(chuàng)建)任務(wù):

wKgZomVcViSAd9bAAAA2AF3cbEA747.jpg

刪除任務(wù):

wKgaomVcViSAB-dHAAAfA0Nwd90832.jpg

更改任務(wù):

wKgaomVcViSAFlZpAAAoGitM1MU455.jpg

執(zhí)行調(diào)度器:

wKgZomVcViWAJW4vAABG1g6gL7k638.jpg

定時(shí)器查詢時(shí)間片:

wKgaomVcViWAcIbvAAAVng7vT7I989.jpg

測(cè)試

封裝好了必要的函數(shù)之后,接下來學(xué)習(xí)如何使用,很簡(jiǎn)單,首先創(chuàng)建幾個(gè)任務(wù),創(chuàng)建了2個(gè)任務(wù),兩個(gè)任務(wù)分別是task01,“時(shí)間片”是50ms(自己根據(jù)需要訂),任務(wù)周期是500ms,task02,“時(shí)間片”是10ms(自己根據(jù)需要訂),任務(wù)周期是1000ms:

wKgaomVcViWAYK6EAAAdOzb0Smk922.jpg

在systick(或者其他定時(shí)器)中調(diào)用,關(guān)于Systick的使用:STM32實(shí)例-SysTick實(shí)現(xiàn)2個(gè)LED流水燈效果。

wKgZomVcViWAEZtuAAAO9GsT-l0599.jpg

最后只需要在while中調(diào)用調(diào)度器就OK了(類似于LVGL的設(shè)計(jì)思路),根據(jù)我們的設(shè)計(jì),兩個(gè)任務(wù),一個(gè)是500ms打印“task01 test”,另一個(gè)1000ms打印“task02 test”。

wKgZomVcViWAVdcaAAD1aUd0qds467.jpg







審核編輯:劉清

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

    關(guān)注

    0

    文章

    29

    瀏覽量

    9968
  • STM32單片機(jī)
    +關(guān)注

    關(guān)注

    59

    文章

    549

    瀏覽量

    59295
  • 裸機(jī)
    +關(guān)注

    關(guān)注

    0

    文章

    39

    瀏覽量

    6587

原文標(biāo)題:STM32單片機(jī)裸機(jī):實(shí)現(xiàn)多任務(wù)

文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FreeRTOS多任務(wù)系統(tǒng)的相關(guān)資料推薦

    目錄單片機(jī)各編程系統(tǒng)特點(diǎn)1、裸機(jī)系統(tǒng)(1)輪詢系統(tǒng)(2)前后臺(tái)系統(tǒng)2、多任務(wù)系統(tǒng)單片機(jī)各編程系統(tǒng)特點(diǎn)單片機(jī)編程中有
    發(fā)表于 01-13 07:51

    時(shí)間片輪詢+狀態(tài)機(jī)實(shí)現(xiàn)裸機(jī)多任務(wù)相關(guān)資料分享

    時(shí)間片+狀態(tài)機(jī)實(shí)現(xiàn)裸機(jī)多任務(wù)注:上述偽多任務(wù)是按個(gè)人理解命名的,實(shí)際上在裸機(jī)中跑的還是單線程,
    發(fā)表于 01-17 06:14

    stm32F4系列單片機(jī)如何利用一個(gè)定時(shí)器和二行代碼實(shí)現(xiàn)多任務(wù)的運(yùn)行?

    stm32F4系列單片機(jī)如何利用一個(gè)定時(shí)器和二行代碼實(shí)現(xiàn)多任務(wù)的運(yùn)行?
    發(fā)表于 01-19 07:37

    介紹一種嵌入式裸機(jī)多任務(wù)切換方法

    一種嵌入式裸機(jī)多任務(wù)切換方法有時(shí)候?yàn)榱?b class='flag-5'>實(shí)現(xiàn)一些簡(jiǎn)單的、對(duì)實(shí)時(shí)性要求不高的任務(wù),采用操作系統(tǒng)不僅增加了程序的復(fù)雜性,對(duì)低性能單片機(jī)的資源占用也
    發(fā)表于 02-28 13:27

    采用Protothread實(shí)現(xiàn)實(shí)時(shí)多任務(wù)系統(tǒng)

    采用Protothread實(shí)現(xiàn)實(shí)時(shí)多任務(wù)系統(tǒng) 在許多系統(tǒng)資源非常緊張的單片機(jī)應(yīng)用中,使用實(shí)時(shí)操作系統(tǒng)進(jìn)行任務(wù)調(diào)度來實(shí)現(xiàn)實(shí)時(shí)
    發(fā)表于 03-29 15:10 ?1531次閱讀
    采用Protothread<b class='flag-5'>實(shí)現(xiàn)</b>實(shí)時(shí)<b class='flag-5'>多任務(wù)</b>系統(tǒng)

    51單片機(jī)多任務(wù)機(jī)制的實(shí)現(xiàn)策略研究

    從操作系統(tǒng)實(shí)現(xiàn)多任務(wù)機(jī)制的原理入手,分析了51單片機(jī)實(shí)現(xiàn)多任務(wù)機(jī)制的基本條件,論述了5l單片機(jī)
    發(fā)表于 09-19 17:26 ?159次下載
    51<b class='flag-5'>單片機(jī)</b><b class='flag-5'>多任務(wù)</b>機(jī)制的<b class='flag-5'>實(shí)現(xiàn)</b>策略研究

    單片機(jī)系統(tǒng)多任務(wù)實(shí)現(xiàn)方法

    考慮到成本等因素,大多數(shù)單片機(jī)系統(tǒng)的開發(fā)還是基于處理器直接編寫,但開發(fā)者經(jīng)常面臨同時(shí)處理多個(gè)任務(wù)的要求,提出了一種單片機(jī)多任務(wù)程序設(shè)計(jì)的方法
    發(fā)表于 11-21 16:47 ?750次下載

    51單片機(jī)多任務(wù)操作系統(tǒng)的原理與實(shí)現(xiàn)

    51單片機(jī)多任務(wù)操作系統(tǒng)的原理與實(shí)現(xiàn),在51單片機(jī)上模擬操作系統(tǒng)
    發(fā)表于 02-28 15:09 ?16次下載

    如何使用51單片機(jī)實(shí)現(xiàn)多任務(wù)機(jī)制的策略詳細(xì)資料說明

    51單片機(jī)在微型智能控制系統(tǒng)中應(yīng)用很廣,隨著人們對(duì)控制系統(tǒng)的要求不斷提高,51單片機(jī)的功能局限越發(fā)明顯。特別是51系列單片機(jī)不具有實(shí)時(shí)多任務(wù)支持功能,大大限制其在控制系統(tǒng)中的進(jìn)一步發(fā)展
    發(fā)表于 07-17 17:38 ?6次下載
    如何使用51<b class='flag-5'>單片機(jī)</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>多任務(wù)</b>機(jī)制的策略詳細(xì)資料說明

    單片機(jī)多任務(wù)處理方案

    單片機(jī)要執(zhí)行多任務(wù),可以使用中斷的方式,也可以使用操作系統(tǒng),目前有一些適用于單片機(jī)的小型操作系統(tǒng)。
    的頭像 發(fā)表于 09-13 15:45 ?9869次閱讀

    使用單片機(jī)實(shí)現(xiàn)道路交通燈多任務(wù)控制系統(tǒng)的課件說明

     RTX-51是運(yùn)行于8051單片機(jī)環(huán)境中的實(shí)時(shí)多任務(wù)操作系統(tǒng)(RTOS),其常用于處理復(fù)雜的多任務(wù)控制系統(tǒng)。8051單片機(jī)支持典型的RTX-51 Tiny和RTX-51 Full實(shí)時(shí)
    發(fā)表于 04-16 17:31 ?7次下載
    使用<b class='flag-5'>單片機(jī)</b><b class='flag-5'>實(shí)現(xiàn)</b>道路交通燈<b class='flag-5'>多任務(wù)</b>控制系統(tǒng)的課件說明

    實(shí)時(shí)多任務(wù)機(jī)制在低功耗單片機(jī)系統(tǒng)中的最小實(shí)現(xiàn)

    簡(jiǎn)要介紹低功耗單片機(jī)系統(tǒng)的設(shè)計(jì)原則。詳細(xì)闡述了實(shí)時(shí)多任務(wù)程序結(jié)構(gòu)的特點(diǎn)以及在低功耗單片機(jī)中的一種最小實(shí)現(xiàn)方法。結(jié)合低功耗熱能測(cè)量系統(tǒng)實(shí)例介紹其具體實(shí)
    發(fā)表于 06-24 10:26 ?27次下載

    單片機(jī)多任務(wù)事件驅(qū)動(dòng)C源碼

    單片機(jī)多任務(wù)事件驅(qū)動(dòng)C源碼
    發(fā)表于 11-29 10:06 ?26次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>多任務(wù)</b>事件驅(qū)動(dòng)C源碼

    時(shí)間片輪詢+狀態(tài)機(jī)實(shí)現(xiàn)裸機(jī)多任務(wù)

    時(shí)間片+狀態(tài)機(jī)實(shí)現(xiàn)裸機(jī)多任務(wù)注:上述偽多任務(wù)是按個(gè)人理解命名的,實(shí)際上在裸機(jī)中跑的還是單線程,
    發(fā)表于 01-18 10:37 ?32次下載
    時(shí)間片輪詢+狀態(tài)<b class='flag-5'>機(jī)</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>裸機(jī)</b><b class='flag-5'>多任務(wù)</b>

    單片機(jī)裸機(jī)實(shí)現(xiàn)隊(duì)列功能的方案

    單片機(jī)裸機(jī)實(shí)現(xiàn)隊(duì)列功能的方案
    的頭像 發(fā)表于 10-17 14:34 ?722次閱讀