新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 縮短μC/OS-II實時內核中斷關閉時間的方法設計

        縮短μC/OS-II實時內核中斷關閉時間的方法設計

        作者: 時間:2012-05-07 來源:網絡 收藏


        2.5 信號量等待函數OSSemPend的修改

        同理,這里以信號量等待函數OSSemPend為例來描述對不能在中斷中調用而又會對臨界區操作的函數的改進。

        信號量等待函數OSSemPend的偽代碼如下:

        在這里,改動后的函數先將系統狀態標志置位,然后進行原來函數的臨界區操作。需要說明的是,對于函數因為等待信號量時間到、還未獲取信號量而返回的情況的處理機制,改動后的函數與原函數不同,改動后的函數將OS_EventTO函數放到時間節拍函數OSTimeTick中執行,并將OS_EventTO函數的輸入參數由原來的事件pevent指針,改為任務控制塊指針ptcb,因為在函數OSTimeTick中是按照任務控制塊指針操作的。

        結語

        上述方法已經在筆者的一個電力微機繼電保護項目中成功運用,該方面的實現,提高了μC/OS-II的性能,擴大了μC/OS-II的應用范圍,使得單邊及工程師能更好的利用μC/OS-II提高嵌入式軟件編程水平。特別要說明的是,雖然筆者是以μC/OS-II為例來介紹的,但該方法的原理可以運用到其他上,筆者正在將該方法在上實現。從這個意義上講,該方法的提出也對那些致力于編寫自己的的嵌入式軟件工程師具有借鑒意義。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 兴化市| 洛浦县| 泗阳县| 瑞丽市| 竹山县| 霸州市| 重庆市| 鄂伦春自治旗| 辽中县| 宜阳县| 桂林市| 岫岩| 玛纳斯县| 清水河县| 溧阳市| 盱眙县| 五寨县| 原平市| 清流县| 芮城县| 剑川县| 射洪县| 南昌县| 四子王旗| 晴隆县| 武汉市| 西吉县| 奉新县| 察雅县| 无为县| 张家界市| 上杭县| 博白县| 宁城县| 南阳市| 乐业县| 高要市| 牟定县| 思南县| 宜宾市| 晋宁县|