




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
基于ARMS3C2410上uC-OSII的移植
學生姓名:鄧小梅學號:
07409221
系部:通信與控制工程專業(yè)年級:
07級電信本二班指導教師:成繼中
一、選題的根據(jù)二、研究內(nèi)容三、研究方法、技術(shù)路線、實驗方案及可行性分析四、畢業(yè)設(shè)計進度安排五、主要參考資料一、選題的根據(jù):(1)本選題的理論、實際意義。(2)綜述國內(nèi)外有關(guān)本選題的研究動態(tài)和自己的見解。(1)本選題的理論、實際意義uC/OSII(MicroControlOperationSystemTwo)是一個可以基于ROM運行的、可裁減的、搶占式實時多任務(wù)操作系統(tǒng)內(nèi)核,具有高度可移植性,特別適合于微處理器和控制器,是和很多商業(yè)操作系統(tǒng)性能相當?shù)膶崟r操作系統(tǒng)(RTOS)。為了提供最好的移植性能,uC/OSII最大程度上使用ANSIC語言進行開發(fā),并且已經(jīng)移植到近40多種處理器體系上,涵蓋了從8位到64位各種CPU(包括DSP)。與市場上主流的嵌入式實時操作系統(tǒng)Vxworks、pSos、WinCE、Linux等相比,uC/OSII有實時性好、成本低、開發(fā)困難相對較低等特點。
本選題通過對uC/OSII的移植,對uC/OSII內(nèi)核的含義和執(zhí)行機制的原理有詳細的了解,并可以了解ARM9處理器的體系結(jié)構(gòu)和建立起嵌入式操作系統(tǒng)的概念。(2)綜述國內(nèi)外有關(guān)本選題的研究動態(tài)和自己的見解
目前uC/OSII支持ARM、PowerPC、MIPS、68k/ColdFire和x86等多種體系結(jié)構(gòu),已經(jīng)被移植到上百各嵌入式處理器上,包括Intel公司的StrongARM、80x86系列,Motorola公司的M68H系列、ColdFire、M-Core等等。由于uC/OSII良好的可擴展性和源碼開放,已經(jīng)出現(xiàn)了基于uC/OSII的相關(guān)應(yīng)用:包括文件系統(tǒng)uC/FS、圖形系統(tǒng)uC/GUI、FlashLoaderuC/FL以及第三方提供的TCP/IP網(wǎng)絡(luò)協(xié)議棧等。本選題是基于ARMS3C2410上的uC/OSII移植。(一)、uC/OSII的移植文件的分析和設(shè)置。
uC/OSII的全部源代碼量大約是6000-7000行,一共有15個文件。將uC/OSII移植到ARM處理器上,需要完成的工作也非常簡單,只需要修改3個和ARM體系結(jié)構(gòu)相關(guān)的文件,代碼量大約是500行。以下分別是3個移植文件的分析和設(shè)置工作:1.設(shè)置與處理器及編譯器相關(guān)的代碼[OS_CPU.H]。2.用C語言實現(xiàn)與處理器任務(wù)相關(guān)的函數(shù)[OS_CPU_C.C]。3.處理器相關(guān)部分匯編實現(xiàn)。整個uC/OSII移植實現(xiàn)中,只需要提供一個匯編語言文件,提供幾個必須由匯編才能實現(xiàn)的函數(shù)。(二)、建立工程。編譯成功后,下載到目標板ARMS3C2410上。(三)、測試uC/OSII是否成功移植到目標板ARMS3C2410上。二、研究內(nèi)容:1、了解嵌入式實時操作系統(tǒng)uC/OSII概念和基本功能。uC/OSII只是一個實時操作系統(tǒng)內(nèi)核,它不僅僅包含了任務(wù)調(diào)度、任務(wù)管理、時間管理、內(nèi)在管理和任務(wù)間的通信和同步等基本功能。2、掌握嵌入式實時操作系統(tǒng)uC/OSII的工作原理。要掌握uC/OSII的工作原理,必須了解uC/OSII的任務(wù)調(diào)度、任務(wù)管理和時間管理等基本功能的執(zhí)行機制。3、掌握嵌入式實時操作系統(tǒng)uC/OSII的相關(guān)文件的移植分析和設(shè)置方法。學會結(jié)合實際硬件配置對OS_CPU.H和OS_CPU_C.C等文件的移植分析。三、研究方法、技術(shù)路線、實驗方案及可行性分析1.研究方法通過網(wǎng)絡(luò)上的uC/OSII的移植相關(guān)文檔的通讀,借鑒他人的研究成果,了解其移植過程的重要步驟和注意事項。另外還可以使用有關(guān)嵌入式系統(tǒng)和uC/OSII書籍作為參考書,學習uC/OSII的基本知識、功能作用及其移植過程,作好準備工作后,再在ARM9S3C2410芯片上進行具體的移植和相關(guān)測試。2.技術(shù)路線在移植之前,了解嵌入式實時操作系統(tǒng)uC/OSII中的基本知識;掌握嵌入式實時操作系統(tǒng)uC/OSII的基本功能及其執(zhí)行機制原理;學會嵌入式實時操作系統(tǒng)uC/OSII相關(guān)文件的移植分析和配置;掌握uC/OSII的編譯方法和移植的具體步驟。以上是軟件方面的準備。至于硬件,則要了解ARM9S3C2410處理器的體系結(jié)構(gòu)和硬件配置,例如寄存器、定時時鐘等等。在以上的兩個基礎(chǔ)上,把相關(guān)的文件配置好,接下了就是具體的移植了。編譯成功后,將其燒寫到目標移植即可,最后測試uC/OSII是否成功移植到目標板上了。3.實驗方案及可行性分析
S3C2410處理器采用ARM920T內(nèi)核,內(nèi)部共有37個寄存器,其中R13通常用作堆棧指針,只要系統(tǒng)RAM空間允許,堆??臻g理論上沒有限制。ARM處理器提供ARM指令和Thumb指令兩種指令集,每種指令集都包含有豐富的指令對堆棧進行操作,可以隨意的對處理器中的寄存器進行堆棧操作。根據(jù)堆棧生長方向的不同,可以生成4種不同的堆棧,分別是滿遞增、空遞增、滿遞減(此移植中使用的是滿遞減方式)、空遞減。芯片內(nèi)集成5個定時時鐘,任何一個都可以產(chǎn)生定時中斷,滿足第三條要求。ADS集成開發(fā)環(huán)境的內(nèi)置編譯器可以產(chǎn)生可重入代碼,并且支持內(nèi)嵌匯編,C環(huán)境中可任意的進行開關(guān)中斷操作。綜上所述uC/OSII完全可以移植到S3C2410上運行。
所謂移植,就是使這個實時內(nèi)核能在某個微處理器上運行。為了方便移植,大部分的uC/OSII代碼是用c語言寫的,但仍需要用c和匯編語言寫一些與處理器相關(guān)的代碼,這是因為uC/OSII在讀寫處理器寄存器時只能通過匯編語言來實現(xiàn)。由于uC/OSII在設(shè)計時就已經(jīng)充分考慮了可移植性,所以uC/OSII的移植相對來說是比較容易的。在本次設(shè)計中,硬件環(huán)境:JXARM9-2410嵌入式開發(fā)板,PC機Pentium500以上,硬盤10G以上。軟件環(huán)境:PC機操作系統(tǒng),ADS集成開發(fā)環(huán)境。本設(shè)計中uC/OSII的移植過程和所需要做的工作如下:(一)、uC/OSII的移植文件的分析和設(shè)置。
uC/OSII的全部源代碼量大約是6000-7000行,一共有15個文件。將uC/OSII移植到ARM處理器上,需要完成的工作也非常簡單,只需要修改3個和ARM體系結(jié)構(gòu)相關(guān)的文件,代碼量大約是500行。以下分別是3個移植文件的分析和設(shè)置工作:1.設(shè)置與處理器及編譯器相關(guān)的代碼[OS_CPU.H]。不同的編譯器會使用不同的字節(jié)長度來表示同一數(shù)據(jù)類型,所以要定義一系列數(shù)據(jù)類型以確保移植的正確性。2.用C語言實現(xiàn)與處理器任務(wù)相關(guān)的函數(shù)[OS_CPU_C.C]。OSTaskStkInit()OSTaskCreateHook()OSTaskDelHook()OSTaskSwHook()OSTaskStatHook()OSTimeTickHook()
實際需要修改的只有OSTaskStkInit()函數(shù),其他五個函數(shù)需要聲明,但不一定有實際內(nèi)容。這五個函數(shù)都是用戶定義的,所以O(shè)S_CPU_C.C中沒有給出代碼。如果需要使用這些函數(shù),可以將文件OS_CFG.H中的#defineconstantOS_CPU_HOOKS_EN設(shè)為1,設(shè)為0表示不使用這些函數(shù)。3.處理器相關(guān)部分匯編實現(xiàn)。整個uC/OSII移植實現(xiàn)中,只需要提供一個匯編語言文件,提供幾個必須由匯編才能實現(xiàn)的函數(shù)。它們是OSStartHighRdy()、OSCtxSw()、OSIntExit()、OSTickISR()共四個函數(shù)。二)、在ADS集成開發(fā)環(huán)境下建立工程。編譯成功后,下載到目標板ARMS3C2410上。(三)、測試uC/OSII是否成功移植到目標板ARMS3C2410上??梢栽跊]有應(yīng)用程序的情況下,運行uC/OSII實時操作系統(tǒng),這樣相對簡單有效,而且出現(xiàn)的問題在內(nèi)核的代碼上。剛開始的時候可以運行一些簡單的任務(wù)和時鐘節(jié)拍中斷服務(wù)例程。一旦多任務(wù)調(diào)度成功地運行了,再添加應(yīng)用程序的任務(wù)就是非常簡單的工作了。四、畢業(yè)設(shè)計進度安排階段工作內(nèi)容
起止時間
備注1與uC/OSII的移植相關(guān)資料的收集、整理,了解課題2010年12.1-12.202據(jù)任務(wù)書,撰寫開題報告、研究可行性實現(xiàn)方案;2010年12.21-2011年1.203做好設(shè)計前期準備工作;根據(jù)任務(wù)書上的相關(guān)設(shè)計指標,構(gòu)思方案比較研究,形成大致的輪廓;
2011年1.21-4.14研究算法、繪制詳盡的程序流程圖及重要部分程序;
2011年4.2-5.55整理文檔與設(shè)計答辯
2011年5.6-6.2五、主要參考資料[[1]陳渝.源碼開放的嵌入式系統(tǒng)軟件分析與實踐[M].北京:航空航天大學出版社,2005[2](美)JeanJ.Labrosse.嵌入式實時操作系統(tǒng)uC/OS-II(第2版)[M].北京:航空航天大學出版社,2007[3]韋東山.嵌入式Linux應(yīng)用開發(fā)完全手冊[M].北京:人民郵電出版社,2008[4]孫天澤.嵌入式設(shè)計及Linux驅(qū)動開發(fā)指南——基于ARM9處理器[M].北京:電子工業(yè)出版社,2005[5]華清遠見嵌入式培訓中心.嵌入式Linux應(yīng)用程序開發(fā)標準教程(第2版)[M].北京:人民郵電出版社,2009[6]美)jackganssle.
嵌入式硬件[M].北京:電子工業(yè)出版社,2010[7]羅克露.
嵌入式軟件調(diào)試技術(shù)[M].北京:電子工業(yè)出版社,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年鮮菇項目可行性研究報告
- 劃船衣行業(yè)行業(yè)發(fā)展趨勢及投資戰(zhàn)略研究分析報告
- 2024年瑞昌市城市管理局社會招聘筆試真題
- 中國視頻編輯器行業(yè)市場深度調(diào)查及發(fā)展前景研究預(yù)測報告
- 2024年廣州市天河區(qū)智谷第二幼兒園招聘教輔人員考試真題
- 蒸汽清潔機項目可行性研究報告
- 二零二五年度資料員勞動合同示例:環(huán)保工程資料歸檔與維護服務(wù)合同
- 電子病歷系統(tǒng)培訓與應(yīng)用推廣
- 2024年德陽市什邡市中醫(yī)醫(yī)院招聘考試真題
- 2025年醫(yī)用鹽項目投資可行性研究分析報告
- 2023年設(shè)備檢修標準化作業(yè)規(guī)范
- 光伏電站除草服務(wù)(合同)范本【詳盡多條款】
- 2023年考核銀行安全保衛(wèi)人員真題與答案
- 儲能全系統(tǒng)解決方案及產(chǎn)品手冊
- (高清版)DZT 0309-2017 地質(zhì)環(huán)境監(jiān)測標志
- 人員轉(zhuǎn)移安置實施方案(公司重組)
- 病歷書寫相關(guān)法律法規(guī)
- 老舊小區(qū)加裝電梯方案
- 老年人誤吸與預(yù)防-護理團標
- 輸氣場站工藝流程切換操作規(guī)程課件
- 青少年網(wǎng)絡(luò)安全教育課件
評論
0/150
提交評論