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

    EEPW首頁 > 嵌入式系統 > 設計應用 > MSP430單片機上使用M430/OS對系統的意義解析方案

    MSP430單片機上使用M430/OS對系統的意義解析方案

    作者: 時間:2012-06-27 來源:網絡 收藏

    任務調度的調度時機有兩種:一種是在任務掛起時,一種是定時中斷。任務掛起時的任務調度一定會引起任務切換,定時中斷就不一定引起任務切換了。因為,如果就緒任務是當前正在運行的任務時不會引起切換。正是如此,任務調度是RTOS中執行得最頻繁的一個功能,也是最重要的一個功能,所以必須盡量縮減其代碼量,盡量用可靠的調度算法來減少任務調度所占的時間。這個子程序的流程如圖3所示。

    (4)任務鎖和其它功能的實現

    任務的加鎖與解鎖,是為了使一些在低優先級任務的不可重入代碼,或對實時性要求較高的I/O操作在執行中不產生任務切換。這項功能是通過設置一個標志位實現的。當調度程序檢查到任務被鎖定時,就算有就緒任務也必須等開鎖之后才能切換。

    如果突然產生一個事件要某個掛起的任務來處理,可以在事件產生的程序中調用任務喚醒。它的原理是把Task_Tick清0,然后執行一次任務調度。如果這個任務優先級較高,就直接切換到這個任務里執行。

    3 總 結

    已在筆者開發的基于F149的上應用,運行穩定可靠。該操作稍加改動,就可應用于其它機。當然,它的功能還是很有限的,也可能還存在一些尚未暴露的問題;但無論如何,它向我們證明,在機系統中RTOS是完全可能的。


    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 锡林郭勒盟| 南宫市| 巴彦淖尔市| 岳西县| 内黄县| 枣强县| 保靖县| 万安县| 南澳县| 酒泉市| 长治县| 禄劝| 福贡县| 崇礼县| 昔阳县| 盐山县| 娱乐| 乌审旗| 巴南区| 江阴市| 丹棱县| 忻州市| 昌图县| 通许县| 丁青县| 伊宁市| 永春县| 麻城市| 廉江市| 横峰县| 黄石市| 洪雅县| 望谟县| 蚌埠市| 黔西| 永安市| 金门县| 庆元县| 赤城县| 南阳市| 五华县|