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

下載本文檔

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

文檔簡(jiǎn)介

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

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論