• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 基于MATLAB的蓄電池充放電監(jiān)測系統(tǒng)

    基于MATLAB的蓄電池充放電監(jiān)測系統(tǒng)

    作者: 時間:2012-03-07 來源:網(wǎng)絡(luò) 收藏

    3.1 MCU程序
    為協(xié)調(diào)各個功能的實(shí)現(xiàn),本文參考了多任務(wù)調(diào)度算法和時間片輪轉(zhuǎn)算法。多任務(wù)調(diào)度算法,是按照實(shí)際要求將單片機(jī)要實(shí)現(xiàn)的功能劃分成多個任務(wù)模塊,并規(guī)定優(yōu)先級別,由一個任務(wù)調(diào)度模塊統(tǒng)一控制執(zhí)行順序。CPU的控制權(quán)按不同優(yōu)先級分配給不同的任務(wù)模塊,各個模塊分別在自己的執(zhí)行時間內(nèi)訪問CPU,形成微觀上輪流執(zhí)行,宏觀上并發(fā)運(yùn)行的多任務(wù)效果,如圖3所示。

    本文引用地址:http://www.czjhyjcfj.com/article/177783.htm

    c.jpg


    中的幾個任務(wù)對時間要求比較敏感,單純使用多任務(wù)調(diào)度不能滿足需求。結(jié)合時間片輪轉(zhuǎn)算法,在任務(wù)分配時考慮時間限制,并將任務(wù)區(qū)分優(yōu)先級。優(yōu)先級高的任務(wù)先執(zhí)行。為保證采樣周期的穩(wěn)定,A/D轉(zhuǎn)換和啟動溫度轉(zhuǎn)換的優(yōu)先級較高,串口發(fā)送晚幾十毫秒不會造成不良影響,所以優(yōu)先級較低。程序簡要流程如圖4所示。

    d.jpg


    其中,任務(wù)調(diào)度模塊包含各任務(wù)的時間信息,如A/D轉(zhuǎn)換0.1s一次,啟動溫度檢測1s一次,讀溫度則40ms一次,串口發(fā)送0.1s一次。若任務(wù)中包含多個子功能快,借鑒有限狀態(tài)機(jī)(FSM)算法,每次執(zhí)行一個子功能,直到本任務(wù)執(zhí)行完成。



    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 洪雅县| 昭平县| 武乡县| 句容市| 大英县| 印江| 临清市| 武汉市| 札达县| 民勤县| 沙雅县| 玛曲县| 固原市| 铅山县| 五原县| 扶沟县| 花莲县| 哈尔滨市| 日土县| 敦煌市| 莒南县| 昌宁县| 彰武县| 乌兰察布市| 桐梓县| 潼南县| 巧家县| 孝昌县| 抚松县| 乳源| 洪雅县| 化德县| 甘德县| 天镇县| 吴桥县| 如皋市| 龙山县| 舞钢市| 温泉县| 南木林县| 普格县|