新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 實時操作系統µC/OS-II在ARM7上的移植

        實時操作系統µC/OS-II在ARM7上的移植

        作者: 時間:2012-04-10 來源:網絡 收藏

        5 測試代碼

        在EmbestIDE編譯器上編譯基于S3C44B0X的;代碼。編譯結果表明,裁剪后的;的代碼占用的空間少,代碼通過了編譯。為了驗證基于S3C44B0X的;的是否成功,本文創建了兩個測試任務來驗證其合理性。

        創建的2個測試任務及源碼如下:

        OSTaskCreate (TestTransplantA, (void *) 0, TestTransplantAStk[StackSize-1], 2);
        OSTaskCreate (TestTransplantB, (void *) 0, TestTransplantBStk[StackSize-1], 3);
        void TestTransplantA (void *pdata)
        { pdata=pdata;
        while(1) {
        uart_printf(TaskA );
        OSTimeDly (400);
        }
        }
        Void TestTransplantB (void *pdata) {
        pdata=pdata;
        while(1) {
        uart_printf(TaskB );
        OSTimeDly(200);
        }
        }

        多任務調度開始后,通過超級終端接收的UART0的數據為:taskA taskB taskB taskA taskB taskB taskA taskB taskB taskA taskB taskB taskA taskB taskB taskA taskB taskB ……。高優先級的任務TestTransplantA()首先被調度運行,說明OSTaskStkInit()和OSStartHighRdy()函數是正確的。任務TestTransplantA()和任務TestTransplantB()由時鐘節拍驅動而周期地被調用,說明OSCtxSw、 OSIntCtxSw()、OSTickISR()也是正確的。通過以上兩點可以認為結果是正確的。

        6 結束語

        在µC/OS-II平臺下開發程序,首先要掌握內核。通過上述移植過程,能夠對任務堆棧,任務調度有深刻理解。作為一種開放源代碼的操作系統,以其優越的性能在嵌入式系統應用領域占據了非常廣泛的發展空間。移植結果表明,經過裁剪的µC/OS-II在S3C44B0X上的移植是成功的。

        參考文獻
        [1] S3C44BOX MICROPROCESSOR Datasheet.Samsung Electronics,2001.
        [2] 田 澤. 嵌入式系統開發與應用教程[M]. 北京:北京航空航天大學出版社,2005.
        [3] 任 哲. 嵌入式操作系統µC/OS-II原理及應用[M]. 北京:北京航空航天大學出版社, 2005.
        [4] 張春雷 王東興. µC/OS-II在C8051F020單片機上的移植[J]. 微計算機信息, 2006, (22): 95-97.
        [5] 譚浩強. C語言程序設計[M]. 北京:清華大學出版社, 1999, 106-141.

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 山阴县| 巴里| 丁青县| 云阳县| 衢州市| 平武县| 泸州市| 长武县| 华亭县| 石柱| 册亨县| 曲水县| 茂名市| 韶山市| 铅山县| 密云县| 临洮县| 沾化县| 鄂托克旗| 富宁县| 德州市| 德惠市| 子长县| 凤城市| 远安县| 石景山区| 汝阳县| 宾阳县| 库尔勒市| 绥化市| 江油市| 息烽县| 聂荣县| 年辖:市辖区| 镇平县| 青州市| 郯城县| 新民市| 三河市| 且末县| 衡东县|