【畢業(yè)論文】基于ARM單片機LPC2124的μCOS-Ⅱ操作系統(tǒng)移植與實現(xiàn).doc_第1頁
【畢業(yè)論文】基于ARM單片機LPC2124的μCOS-Ⅱ操作系統(tǒng)移植與實現(xiàn).doc_第2頁
【畢業(yè)論文】基于ARM單片機LPC2124的μCOS-Ⅱ操作系統(tǒng)移植與實現(xiàn).doc_第3頁
【畢業(yè)論文】基于ARM單片機LPC2124的μCOS-Ⅱ操作系統(tǒng)移植與實現(xiàn).doc_第4頁
【畢業(yè)論文】基于ARM單片機LPC2124的μCOS-Ⅱ操作系統(tǒng)移植與實現(xiàn).doc_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

目錄摘要21. 引言42. 國內(nèi)外研究的發(fā)展與現(xiàn)狀53. 單片機相關(guān)情況簡介73.1單片機與單片微計算機系統(tǒng)73.2單片機發(fā)展概述73.3 單片機的特點83.4單片機的應(yīng)用領(lǐng)域93.4.1單片機的單機應(yīng)用范圍93.4.2單片機的多機應(yīng)用范圍93.5 國內(nèi)外對單片機的開發(fā)清況94. ARM嵌入式處理器介紹及選型124.1 ARM嵌入式處理器簡介124.2 ARM微處理器的工作模式和異常處理124.4 ARM寄存器144.4 ARM微處理器的選型154.5 ARM微處理器LPC2124介紹165. C/OS-II 操作系統(tǒng)簡介175.1 C/OS-II操作系統(tǒng)的特點175.2 C/OS-II 操作系統(tǒng)的結(jié)構(gòu)185.2.1C/OS-II 操作系統(tǒng)文件結(jié)構(gòu)185.2.2 C/OS-II 操作系統(tǒng)內(nèi)核體系結(jié)構(gòu)圖195.3 C/OS-II操作系統(tǒng)任務(wù)狀態(tài)及其轉(zhuǎn)換關(guān)系195.3.1 C/OS-II操作系統(tǒng)任務(wù)控制塊215.3.2 C/OS-II操作系統(tǒng)任務(wù)調(diào)度器225.3.3 C/OS-II操作系統(tǒng)任務(wù)切換225.3.4 C/OS-II操作系統(tǒng)任務(wù)就緒表225.3.5 C/OS-II操作系統(tǒng)中斷服務(wù)235.3.6 C/OS-II操作系統(tǒng)時鐘節(jié)拍245.4 C/OS-II的初始化和啟動246. C/OS-II在 LPC2124 上的移植276.1 C/OS-II的移植簡介276.3 C/OS-II移植中應(yīng)注意的問題286.4.1 改寫OS_CPU. H 文件296.4.2 改寫OS_CPU_C.C 文件326.4.3 改寫 OS_CPU_A.ASM346.5測試移植代碼436.5.1編譯環(huán)境的調(diào)試446.5.2測試與處理器相關(guān)的代碼45參考文獻48致 謝49摘要本文文首先從嵌入式系統(tǒng)的基本概念入手,對在嵌入式系統(tǒng)中使用RTOS的必要性,RTOS的發(fā)展現(xiàn)狀和發(fā)展趨勢等方面進行了簡單綜述,然后著重分析了操作系統(tǒng)C/OS-內(nèi)核結(jié)構(gòu),如:任務(wù)調(diào)度、時間管理、通訊機制以及內(nèi)存管理等。在此基礎(chǔ)上,并以帶有數(shù)據(jù)處理能力較強的32位單片機的LPC2124開發(fā)機為控制對象,以搶占式內(nèi)核LPC2124為嵌入式操作系統(tǒng),以BorlnadC+4.5為編譯環(huán)境搭建了一套嵌入式操作系統(tǒng)軟硬件開發(fā)平臺,實現(xiàn)了COS-在LPC2124上的移植。關(guān)鍵詞:嵌入式系統(tǒng);LPC2124;C/OS-;系統(tǒng)移植AbstractBeginning with the basic conception of the emebedded system,the paper introduces the necessity of using RTOS in the embedded system, the current situation of the development of RTOS and development trend,etc. This thesis introduces the real time operation systemC/OS-and analyzes kernel particularly, for instance, task-scheduler, time-manage, comumunication-principle and member-manage. Based on it, designing the software and hardware platform of embedded operation system, with regards LPC2124 developer as control object, reaving kernel C/OS- as operation system ,Borland C+ 4.5 as code warrior. Implementing the transplantation of C/OS- on the LPC2124.Key Words:Embedded system; LPC2124; C/OS-, Operating System Transplant1. 引言 隨著國內(nèi)外工業(yè)化、數(shù)字化的步伐加快。嵌入式開發(fā)在rI行業(yè)中的重要性越來越顯著。嵌入式系統(tǒng)也以其體積小、功耗低、性能高的優(yōu)點得到了人們的廣泛關(guān)注。嵌入式操作系統(tǒng)作為嵌入式軟件運行的平臺,負責管理各個進程間的創(chuàng)建、刪除以及任務(wù)調(diào)度,統(tǒng)一管理系統(tǒng)的軟硬件資源,因此進行嵌入式開發(fā)。首先要實現(xiàn)嵌入式操作系統(tǒng)在相關(guān)處理器上的移植,再以次為基礎(chǔ)開發(fā)相應(yīng)的應(yīng)用軟件。本文以公開源碼的C/OS II嵌入式實時操作系統(tǒng)為例。描述了該嵌入式實時操作系統(tǒng)在LPC2124上的移植。從而構(gòu)成了一個軟硬件都非常強大的開發(fā)平臺,并以此為基礎(chǔ),建立了一個浮子式液位測量系統(tǒng),來說明C/OS II在嵌入式系統(tǒng)中的應(yīng)用。 3. 單片機相關(guān)情況簡介3.1單片機與單片微計算機系統(tǒng)計算機系統(tǒng)已明顯地朝巨型化、單片化、網(wǎng)絡(luò)化三個方向發(fā)展。巨型化發(fā)展的目的在于不斷提高計算機的運算速度和處理能力,以解決復(fù)雜系統(tǒng)計算和高速數(shù)據(jù)處理,比如系統(tǒng)仿真和模擬、實時運算和處理。單片化就是把計算機系統(tǒng)盡可能集成在一塊半導體芯片上,其目的在于計算機微型化和提高系統(tǒng)的可靠性,通常把這種單片計算機簡稱單片機。準確而言,單片機(單片微型計算機)實際上是一種將CPU(中央處理器)、存儲器和輸入輸出接口集成在一個芯片中的微型計算機。單片機的內(nèi)部硬件結(jié)構(gòu)和指令系統(tǒng)主要是針對自動控制應(yīng)用而設(shè)計的,所以單片機又稱微控制器MCU(MicroController Unit),又由于用它可以很容易地將計算機嵌入到各種儀器和現(xiàn)場控制設(shè)備中,因此單片機也叫嵌入式微控制器(Embedded MCU)。4. ARM嵌入式處理器介紹及選型4.1 ARM嵌入式處理器簡介ARM微處理器內(nèi)核是ARM技術(shù)的核心,目前市場上能夠見到的有ARM7、ARM9、ARM9E、ARM10E、SecurCore、ARM11,還有Intel的Xcale微體系架構(gòu)及StrongARM等系列。ARM處理器采用RSIC的架構(gòu)技術(shù),它具備小體積,低功耗,低成本,高性能等特色,支持Thumb(16位)和ARM(32位)雙指令集,能很好地兼容8位/16位器件。4.2 ARM微處理器的工作模式和異常處理從而被中斷的任務(wù)進入等待狀態(tài),運行被激活的高優(yōu)先級的任務(wù)。5.3.3 C/OS-II操作系統(tǒng)任務(wù)切換任務(wù)切換有兩種:OS_TASK_SW()和OSIntCtxSw()。任務(wù)級的任務(wù)切換OS_TASK_SW()是宏調(diào)用,通過軟中斷指令來實現(xiàn)CPU寄存器內(nèi)容切換。例如:#define OS_TASK_SW() asm(“int #32”),具體實現(xiàn)參見移植文檔。任務(wù)級的任務(wù)切換過程:中實現(xiàn)了函數(shù)init_timer_ta0(),此函數(shù)用來初始化定時器TA0,并將其打開。C/OS-II中的時鐘節(jié)拍服務(wù)是在ISR中調(diào)用OSTimeTick()實現(xiàn)的。OSTimeTick()跟蹤所有任務(wù)的定時器以及超時時限。5.4 C/OS-II的初始化和啟動調(diào)用uC/OS-II的服務(wù)之前要先調(diào)用系統(tǒng)初始化函數(shù)OSInit()。OSInit()初始化u6. C/OS-II在 LPC2124 上的移植 6.1 C/OS-II的移植簡介所謂移植就是使個實時內(nèi)核能在其他的微處理器或微控制器上運行。要使I-LCOS-II正常運行。處理器必須滿足以下要求:處理器的C編譯器能產(chǎn)生可重入型代碼;處理器支持中斷,并且能夠產(chǎn)生定時中斷:用C語言就可以開、關(guān)中斷;處理器能支持一定數(shù)量的輸出存儲硬件堆棧;處理器有將堆棧指 STR SP, R1 (18) BL OSTaskSwHook ;調(diào)用子函數(shù) (19) 堆棧指針(32) LDMFD SP!, R4, R5 ;CPSR,OsEnterSum (33) 這部分代碼基本按照C/OS-提供的函數(shù)原型編寫的,其中程序清單(1)(18)部分 與OSCtxSw()和OSIntCtxSw( )的原型是沒有對應(yīng)語句的,寄存器應(yīng)當保存到任務(wù)的堆棧中,但為了節(jié)省CPU的時間和RAM的空間,僅在必要的時候才將寄存器保存到任務(wù)堆棧。 OSTCBCur-OSTCBStkPtr=SP也是在必要的時候才執(zhí)行的。最后通過中斷返回指令恢復(fù)R0R12,把SPSR拷貝到CPSR(恢復(fù)用戶任務(wù)的處理器模式和指令集)和執(zhí)行用戶任務(wù)(恢復(fù)PC指針),這是由程序段(37)實現(xiàn)的。這里需要注意的是程序段(29)和(32)中的SP是不同的處理器寄存器分別為R13和R13_SVC。(3)C/OS-最高任務(wù)的運行OSStartHighRdy的編寫C/OS-啟動多任務(wù)環(huán)境的函數(shù)叫做OSStart()。用戶在調(diào)用OSStart() 之參考文獻1 任哲等.嵌入式操作系統(tǒng)基礎(chǔ)C/OS-II和Linux.北京:北京航空航天大學出版社, 2006.2 JeanJLabrosse, 邵貝貝譯.嵌入式實時操作系統(tǒng)C/OSSM.北京:北京航空航天大學出版社, 2004.3 Philips公司.LPC2114/2124 User Manuai.2004.4 Arnold Berger,呂駿譯.嵌入式系統(tǒng)設(shè)計.電子工業(yè)出版社, 2002.5 Frank Vahid Tony Givargis,駱麗譯,嵌入式系統(tǒng)設(shè)計.北京:北京航空航天大學出版社, 20046 周立功.ARM嵌入式系統(tǒng)基礎(chǔ)教程.北京:北京航空航天大學出版社,2005.7 馬文華.嵌入式系統(tǒng)設(shè)計與開發(fā)M . 北京:科學出版社, 2006.8 李廣弟.單片機基礎(chǔ)M . 北京: 北京航空航天大學出版社, 1994.9 王田苗.嵌入式系統(tǒng)設(shè)計與實例開發(fā)M . 北京:清華大學出版社, 2002.10 李爽正.嵌入式操作系統(tǒng)uC/OS-II的特點及移植應(yīng)用研究.河南:多媒體技術(shù)及應(yīng)用,2003,1299.11 Jean J.Labrosse,uC/OS-II源碼公開的實時嵌入式操作系統(tǒng)(第二版), 邵貝貝, 譯. 北京:北京航空航天大學出版社, 2003.5.致 謝轉(zhuǎn)眼間,四年的大學生活就要結(jié)束了,十分感謝海南大學三亞學院給我提供這樣一個環(huán)境,讓我可以接觸到各種各樣的人和事,讓我不再是一個井底之蛙,讓我學會了如何去工作,如何去學習,讓我找到了自己的人生方向。在這里,我圓了成為一名大學生的夢。在本文結(jié)束之際,此時此刻要感謝的人實在太多。首先要感謝我的導師老師。老師的治學嚴謹、寬于待人,四年下來,給我留下了深刻印象,能在老師的指導下完成本科畢業(yè)論文,是我一生的財富。感謝您從本文選題開始一路指導至本論文的完成,從論文題目的選定到論文寫作的指導,經(jīng)由您悉心的點撥,再經(jīng)思考后的領(lǐng)悟,常常

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論