新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 基于時間觸發(fā)嵌入式系統(tǒng)的設計與應用

        基于時間觸發(fā)嵌入式系統(tǒng)的設計與應用

        作者: 時間:2013-12-13 來源:網(wǎng)絡 收藏
        line-height: 22px; text-indent: 2em; font-family: 宋體, Georgia, verdana, serif; ">SREG=0×80或SEI();調(diào)度器必須先設定一個默認的時間片,這并不是件簡單的事。時間片過長會導致系統(tǒng)對交互行為的響應表現(xiàn)欠佳;時間片太短又會明顯地增大調(diào)度器處理耗時,而留給任務運行的時間卻很短。

        本文引用地址:http://www.104case.com/article/227567.htm

        根據(jù)筆者經(jīng)驗,一個較為可取的時間片是略大于一次典型的交互所需要的時間,使大多數(shù)進程在一個時間片內(nèi)完成。經(jīng)反復嘗試,時間片選擇在1~5ms之間執(zhí)行效率較高,這樣既可滿足響應速度的要求又能把任務執(zhí)行的時間降到最低。該時間與任務個數(shù)和任務運行時間均有關,具體大小視情況而定。

        4.3 中斷服務程序

        建議該函數(shù)由CTC方式激活,當某任務需要運行時,使之處于就緒態(tài)等待被執(zhí)行。該函數(shù)內(nèi)容由具體任務而定。

        4.4 調(diào)度器任務添加函數(shù)

        該函數(shù)用來將任務添加到消息隊列,以保證條件滿足時被調(diào)用,函數(shù)如下所示:

        基于時間觸發(fā)嵌入式系統(tǒng)的設計與應用

        {定義靜態(tài)變量i;循環(huán)判斷任務隊列是否有空間;若無,報錯返回;否則,添加任務;}

        4.5 調(diào)度函數(shù)

        刷新函數(shù)雖然能夠直接激活任務,但若直接運行,長任務將破壞時標中斷,這意味著所有的系統(tǒng)定時都將受到嚴重影響,造成許多任務不能被調(diào)度。因此,為了在長任務存在的情況下使調(diào)度器的可靠性最大化,分離刷新和調(diào)度這兩個操作是必要的。

        采用的是FCFS算法,為了提高系統(tǒng)的響應速度,必須要求Durationtask

        void SCH_Dispatch_Tasks(void){定義靜態(tài)變量i;如果運行標志位大于0,則執(zhí)行該任務;該標志位清零;如果是單次任務,則將其刪除;}

        4.6 調(diào)度器任務刪除函數(shù)

        void SCH_Delete_Task(const uint8task_id){定義 靜態(tài)返回值;若指針函數(shù)為空,返回空閑代碼;否則,對其延遲、周期、狀態(tài)等變量清零;返回代碼;}

        5.應用實驗

        以電磁爐系統(tǒng)為例,進一步介紹基于AVR微控制器的的具體應用。

        電磁爐系統(tǒng)是一個復雜的,如圖2所示,AVR要處理大量的外圍設備,為便于開發(fā),將整個程序按照硬件及功能進行模塊劃分,各個功能模塊之間通過傳遞消息的方式來完成多任務的處理。

        基于時間觸發(fā)嵌入式系統(tǒng)的設計與應用

        針對該應用,可設計功能模塊:MSGMap[],該數(shù)組由各個功能模塊組成,具體子函數(shù)如表1所列,使用函數(shù)數(shù)組的方式可以增強程序的擴展能力。如果有新的外設,只需在這里添加對應的模塊入口,并完成相應的模塊就可以增加系統(tǒng)的功能。

        基于時間觸發(fā)嵌入式系統(tǒng)的設計與應用

        其中每個任務的運行周期間隔時間是程序中設定的參數(shù)(周期應為4ms的倍數(shù)),具體執(zhí)行時間由AVR Studio測得,均應小于設定時間片4ms,否則應用將出錯,需重新設定時間片大小或再次分割功能模塊。其中看門狗處理任務是唯一的搶占式任務。

        6.結論

        實驗表明,以AVR微控制器為核心的控制系統(tǒng),外圍擴展功能強大、開發(fā)較簡單,結合以理念為內(nèi)核的操作系統(tǒng),設計時一次只為一個任務分配空間,每個任務的存儲開銷只有8個字節(jié),采用由C語言與匯編混合式編程,簡單、安全,可預測性強,尤其適用于對成本和穩(wěn)定性均有要求的中小企業(yè)。隨著嵌入式系統(tǒng)的發(fā)展,基于AVR的時間觸發(fā)嵌入式系統(tǒng)必然有著廣闊的應用前景。

        電磁爐相關文章:電磁爐原理



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 广汉市| 白山市| 望奎县| 铜鼓县| 札达县| 保亭| 宝坻区| 民乐县| 玉林市| 玛沁县| 罗平县| 花垣县| 安吉县| 阿拉尔市| 长沙市| 淮滨县| 嵊州市| 小金县| 托克托县| 本溪| 虎林市| 永福县| 新余市| 盐津县| 长子县| 辽阳市| 雷波县| 贵南县| 乌拉特后旗| 贡嘎县| 凉山| 德令哈市| 禹城市| 渑池县| 友谊县| 延吉市| 宁蒗| 佛山市| 乌海市| 岗巴县| 含山县|