新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > μC/OS-II在51單片機(jī)上的移植

μC/OS-II在51單片機(jī)上的移植

作者: 時(shí)間:2012-04-27 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:針對(duì)在51實(shí)時(shí)操作系統(tǒng)μC/的目的,以μC/工作原理為基礎(chǔ),結(jié)合51機(jī)堆??臻g少的情況,采用改變堆棧指針到不同任務(wù)寄存器組的方法,通過(guò)改變堆棧指針的實(shí)驗(yàn),得出在堆??臻g較少的情況下,也能夠?qū)崿F(xiàn)μC/在51的運(yùn)行的結(jié)論。
關(guān)鍵詞:μC/OS;單片機(jī);實(shí)時(shí)操作系統(tǒng);堆棧

μC/OS-II是一種公開(kāi)源代碼、結(jié)構(gòu)小巧、具有可剝奪實(shí)時(shí)內(nèi)核的嵌入式開(kāi)發(fā)系統(tǒng),代碼簡(jiǎn)短、條理清晰、實(shí)時(shí)性及安全性能很高,絕大部分代碼用C編寫(xiě),現(xiàn)已被到多種處理器的構(gòu)架中。隨著51單片機(jī)片內(nèi)資源的日益豐富,在51單片μC/OS-II已成為可能,植入系統(tǒng)后,由系統(tǒng)來(lái)管理軟件與硬件資源,簡(jiǎn)化應(yīng)用程序的設(shè)計(jì),并且使應(yīng)用系統(tǒng)功能更加完善。因此在51單片機(jī)上移植μC/OS-II具有十分重要的意義。

1 μC/OS實(shí)時(shí)操作系統(tǒng)概述
μC/OS-II實(shí)時(shí)操作系統(tǒng)是一種可移植、可固化、可裁剪即可剝奪型的多任務(wù)實(shí)時(shí)內(nèi)核,適用于各種微處理器和微控制器。μC/OS-II主要包括任務(wù)調(diào)度、時(shí)間管理、內(nèi)存管理、事件管理(信號(hào)量、郵箱、消息隊(duì)列)4大部分。它的移植與4個(gè)文件相關(guān):匯編文件(OS_CPU_A.A SM)、處理器相關(guān)C文件(OS_CPU.H、OS_CPU_C.C)和配置文件(OS_CFG.H)。有64個(gè)優(yōu)先級(jí),系統(tǒng)占用8個(gè),用戶(hù)可創(chuàng)建56任務(wù),不支持時(shí)間片輪轉(zhuǎn)。
它的基本思路就是“近似地每時(shí)每刻總是讓優(yōu)先級(jí)最高的就緒任務(wù)處于運(yùn)行狀態(tài)”。為了保證這一點(diǎn),它在調(diào)用系統(tǒng)函數(shù)、中斷結(jié)束、定時(shí)中斷結(jié)束時(shí)總是執(zhí)行調(diào)度算法。原作者通過(guò)事先計(jì)算好數(shù)據(jù),簡(jiǎn)化了運(yùn)算量,通過(guò)精心設(shè)計(jì)就緒表結(jié)構(gòu),使得延時(shí)可預(yù)知。任務(wù)的切換是通過(guò)模擬一次中斷實(shí)現(xiàn)的。

2 任務(wù)調(diào)度的實(shí)現(xiàn)原理
任務(wù)調(diào)度是μC/OS-II的重要部分,和具體的微處理器關(guān)系緊密。必須移植的5個(gè)函數(shù)有4個(gè)都和任務(wù)有關(guān)。任務(wù)調(diào)度就是保存當(dāng)前任務(wù)的寄存器和PC指針(即當(dāng)前任務(wù)的斷點(diǎn)),然后把將要執(zhí)行的任務(wù)的寄存器值返回給寄存器并把PC指向?qū)⒁獔?zhí)行任務(wù)的斷點(diǎn)。這些的實(shí)現(xiàn)要借助于堆棧和中斷,為了簡(jiǎn)便起見(jiàn),先看函數(shù)調(diào)用時(shí)堆棧的使用情況。在函數(shù)調(diào)用時(shí),堆棧的一個(gè)重要功能就是保存被調(diào)函數(shù)的斷點(diǎn)地址。若有4個(gè)函數(shù),F(xiàn)un1調(diào)用Fun2,F(xiàn)un2調(diào)用Fun3,F(xiàn)un3調(diào)用Fun4,F(xiàn)un4為葉子程序(無(wú)子程序調(diào)用)。
a.JPG


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 移植 機(jī)上 單片 OS-II

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉