《嵌入式操作系統(tǒng)》課程設(shè)計_第1頁
《嵌入式操作系統(tǒng)》課程設(shè)計_第2頁
《嵌入式操作系統(tǒng)》課程設(shè)計_第3頁
《嵌入式操作系統(tǒng)》課程設(shè)計_第4頁
《嵌入式操作系統(tǒng)》課程設(shè)計_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、嵌入式操作系統(tǒng)課程設(shè)計指導(dǎo)書專 業(yè):計算機科學(xué)與技術(shù)專業(yè)方向:計算機科學(xué)與技術(shù)計算機科學(xué)與工程學(xué)院13第一章 課程設(shè)計指導(dǎo)書1、目的任務(wù)本設(shè)計的目的在于使學(xué)生全面理解實踐已學(xué)的相關(guān)課程內(nèi)容,深刻理解嵌入式系統(tǒng)開發(fā)的全過程。從硬件的角度掌握嵌入式開發(fā)板的組成,接口部件的結(jié)構(gòu)和與宿主機間的連接,從軟件的角度掌握嵌入式系統(tǒng)軟件開發(fā)的全過程。使學(xué)生通過自己的實踐,初步了解和掌握一個實用嵌入式系統(tǒng)的開發(fā)步驟,綜合應(yīng)用所學(xué)的基礎(chǔ)知識和編程手段獨立完成嵌入式系統(tǒng)開發(fā)的基礎(chǔ)內(nèi)容。2、設(shè)計內(nèi)容基礎(chǔ)實驗(必做) 嵌入式系統(tǒng)開發(fā)環(huán)境搭建擴展實驗(從以下三個實驗中任選一個)實驗一 利用Autotools工具自動生成M

2、akefile文件實驗二 使用BusyBox制作根文件系統(tǒng)實驗三 使用GTK+進行圖形界面編程3、時間安排時間:第17周第一天確定題目、查找相關(guān)資料,安裝系統(tǒng);第二到第四天為實驗和程序設(shè)計、完善總結(jié)、撰寫報告,第五天答辯。4、工作要求(1) 愛護實驗開發(fā)板,為避免燒壞開發(fā)板,對開發(fā)板的任何插拔工作,都必須在斷電之后進行。(2) 明確實驗要求和步驟,在進行實驗之前詳細閱讀開發(fā)板配套手冊和相關(guān)資料。(3) 在本設(shè)計過程中,學(xué)生應(yīng)隨時做實習(xí)筆記,記錄每天的工作內(nèi)容及結(jié)果,同時還應(yīng)規(guī)劃出次日的實習(xí)計劃與解決問題的方案。5、成績評定設(shè)計結(jié)束時,由指導(dǎo)老師對學(xué)生進行全面考核,評分按五級分制(優(yōu)、良、中、及

3、格、不及格)評定成績,評分依據(jù)以下幾個方面。(1)平時成績包括遵守紀律情況,實習(xí)中的工作態(tài)度,實習(xí)日記的記錄情況等。(2)設(shè)計中實驗結(jié)果的成績教師要把關(guān),確認實驗結(jié)果是由實驗人做出的。如不能按設(shè)計要求做出實驗結(jié)果的,要予以扣分;對于有創(chuàng)新的實驗及結(jié)果者,應(yīng)給予好的成績。對于以下情況之一者,要嚴格進行處理。. 照抄他人,自己沒有消化者,應(yīng)給予“不及格”。. 嚴重遲到早退,應(yīng)給予“不及格”。. 實習(xí)不認真,違反實驗室規(guī)定者,應(yīng)給予“不及格”。. 缺勤大于整個工作時間的25%以上者,應(yīng)給予“不及格”。. 實習(xí)報告不認真者,至少不能給“優(yōu)”和“良”的成績。6、參考資料(1)熊茂華、熊昕編著.嵌入式Li

4、nux實時操作系統(tǒng)及應(yīng)用編程.清華大學(xué)出版社.2011年5月第1版(2)深圳友堅恒天科技公司開發(fā)板配套光盤中用戶手冊:idea6410開發(fā)板linux使用手冊ubuntu-UserManual_v0.18UT6410-Android2.1_manual(3)相關(guān)國嵌、申嵌視頻資料7、設(shè)計說明書(報告)(1)正文:正文內(nèi)容層次序號為: 1、1.1、1.1.1。正文內(nèi)容一般為:. 選題背景:說明本課題應(yīng)解決的主要問題及應(yīng)達到的技術(shù)要求;簡述本設(shè)計的指導(dǎo)思想。. 方案論證:說明設(shè)計原理并進行方案選擇,闡明為什么要選擇這個設(shè)計方案以及所采用方案的特點。. 過程(設(shè)計或?qū)嶒?論述:對設(shè)計工作的詳細表述。

5、要求層次分明、表達確切。. 結(jié)果分析:對研究過程中所獲得的主要的數(shù)據(jù)、現(xiàn)象進行定性或定量分析,得出結(jié)論和推論。. 結(jié)論或總結(jié):對整個研究工作進行歸納和綜合。(2)圖紙要求:圖面整潔,布局合理,線條粗細均勻,圓弧連接光滑,尺寸標注規(guī)范,文字注釋必須使用工程字書寫。提倡學(xué)生使用計算機繪圖。(3)曲線圖表要求:所有曲線、圖表、線路圖、流程圖、程序框圖、示意圖等不準徒手畫,必須按國家規(guī)定標準或工程要求繪制(應(yīng)盡可能采用計算機輔助繪圖)。課程設(shè)計說明書(報告)要求文字通順,語言流暢,無錯別字,不得使用鉛筆書寫。按教務(wù)處印制的統(tǒng)一格式封皮裝訂。有條件的可用B5紙打印。課程設(shè)計說明書(報告)中圖表、公式一律

6、采用阿拉伯?dāng)?shù)字連續(xù)編號。圖序及圖名置于圖的下方;表序及表名置于表的上方;說明書(報告)中的公式編號,用括號括起來寫在右邊行末,其間不加虛線。第二章 嵌入式系統(tǒng)開發(fā)流程2.1 嵌入式系統(tǒng)開發(fā)的一般流程當(dāng)前,嵌入式開發(fā)已經(jīng)逐步規(guī)范化,在遵循一般工程開發(fā)流程的基礎(chǔ)上,嵌入式開發(fā)有其自身的一些特點,下圖為嵌入式系統(tǒng)開發(fā)的一般流程。主要包括系統(tǒng)需求分析(要求有嚴格規(guī)范的技術(shù)要求)、體系結(jié)構(gòu)設(shè)計、硬件/軟件設(shè)計、系統(tǒng)集成、系統(tǒng)測試,最終發(fā)布產(chǎn)品。系統(tǒng)需求分析,規(guī)格說明書體系結(jié)構(gòu)設(shè)計硬件設(shè)計軟件設(shè)計機械系統(tǒng)設(shè)計系統(tǒng)集成系統(tǒng)測試產(chǎn)品2.1.1系統(tǒng)需求分析確定設(shè)計任務(wù)和設(shè)計目標,并提煉出設(shè)計規(guī)格說明書,作為正式

7、設(shè)計指導(dǎo)和驗收的標準。系統(tǒng)的需求一般分功能性需求和非功能性需求兩方面。功能性需求是系統(tǒng)要實現(xiàn)的基本功能,如輸入輸出信號、操作方式等;非功能性需求包括系統(tǒng)性能、成本、功耗、體積、重量等因素。2.1.2體系結(jié)構(gòu)設(shè)計描述系統(tǒng)如何實現(xiàn)所述的功能性和非功能性需求,包括對硬件、軟件和執(zhí)行裝置的功能劃分以及系統(tǒng)的軟件、硬件選型等。一個好的體系結(jié)構(gòu)是設(shè)計成功與否的關(guān)鍵。 2.1.3硬件/軟件協(xié)同設(shè)計(硬件、軟件、執(zhí)行裝置并行設(shè)計)基于體系結(jié)構(gòu),對系統(tǒng)的軟件、硬件進行詳細設(shè)計。為了縮短產(chǎn)品開發(fā)周期,設(shè)計往往是并行的。嵌入式系統(tǒng)設(shè)計的大部分工作集中在軟件設(shè)計上,采用面向?qū)ο蠹夹g(shù)、軟件組件技術(shù)、模塊化設(shè)計是現(xiàn)代軟件

8、工程經(jīng)常采用的方法。2.1.4系統(tǒng)集成把系統(tǒng)的軟件、硬件和執(zhí)行裝置集成在一起,進行調(diào)試,發(fā)現(xiàn)并改進單元設(shè)計過程中的錯誤。 2.1.5系統(tǒng)測試對設(shè)計好的系統(tǒng)進行測試,檢查是否滿足規(guī)格說明書中給定的功能要求。嵌入式系統(tǒng)開發(fā)模式最大特點是軟件、硬件綜合開發(fā)。這是因為嵌入式產(chǎn)品是軟硬件的結(jié)合體,軟件針對硬件開發(fā)、固化、不可修改。2.2基于Linux的嵌入式系統(tǒng)開發(fā)如果在一個嵌入式系統(tǒng)中使用Linux技術(shù)開發(fā),根據(jù)應(yīng)用需求的不同有不同的配置開發(fā)方法,但是,一般情況下,在遵照一般嵌入式系統(tǒng)開發(fā)流程的同時,都需要經(jīng)過如下的過程。2.2.1. 開發(fā)目標板硬件設(shè)計目標板硬件選型及器件布局。2.2.2. 建立一套

9、交叉編譯工具建立一套交叉編譯工具,能夠在宿主機上產(chǎn)生目標板上運行的目標代碼。通過網(wǎng)絡(luò)下載相應(yīng)的GCC交叉編譯器進行安裝(比如,arm-1inux-gcc、arm-uclibc-gcc),或者安裝產(chǎn)品廠家提供的相關(guān)交叉編譯器;并配置開發(fā)主機,使其與目標板建立通信,配置MINICOM,一般的參數(shù)為波特率115200 Baud/s,數(shù)據(jù)位8位,停止位為1,無奇偶校驗,軟件硬件流控設(shè)為無。在Windows下的超級終端的配置也是這樣。MINICOM軟件的作用是作為調(diào)試嵌入式開發(fā)板的信息輸出的監(jiān)視器和鍵盤輸入的工具。配置網(wǎng)絡(luò)主要是配置NFS網(wǎng)絡(luò)文件系統(tǒng),需要關(guān)閉防火墻,簡化嵌入式網(wǎng)絡(luò)調(diào)試環(huán)境設(shè)置過程。&#

10、160;2.2.3. 移植一個合適的引導(dǎo)加載程序到目標板上,用于初始化目標板和加載內(nèi)核從網(wǎng)絡(luò)上下載一些公開源代碼的BOOTLOADER,如U-BOOT、VIVI、ARM-BOOT等,根據(jù)具體芯片進行移植修改。有些芯片沒有內(nèi)置引導(dǎo)裝載程序,就需要編寫開發(fā)板上FLASH的燒寫程序,可以在網(wǎng)上下載相應(yīng)的燒寫程序,也有Linux下的公開源代碼的J-FLASH程序。如果不能燒寫自己的開發(fā)板,就需要根據(jù)自己的具體電路進行源代碼修改。這是讓系統(tǒng)可以正常運行的第一步。如果用戶購買了廠家的仿真器比較容易燒寫FLASH,雖然無法了解其中的核心技術(shù),但對于需要迅速開發(fā)自己的應(yīng)用的人來說可以極大提高開發(fā)速度。

11、0;2.2.4. 移植一個合適的Linux內(nèi)核到目標板上如果有專門針對所使用的CPU移植好的Linux操作系統(tǒng)那是再好不過,下載后再添加特定硬件的驅(qū)動程序,然后進行調(diào)試修改,對于帶MMU的CPU可以使用模塊方式調(diào)試驅(qū)動,否則只能編譯進內(nèi)核進行調(diào)試。2.2.5. 建立一個根文件系統(tǒng)可以從http:/下載使用BUSYBOX軟件進行功能裁減,產(chǎn)生一個最基本的根文件系統(tǒng),再根據(jù)自己的應(yīng)用需要添加其他的程序。由于默認的啟動腳本一般都不會符合應(yīng)用的需要,所以就要修改根文件系統(tǒng)中的啟動腳本,它的存放位置位于/etc目錄下,包括:/etc/init.d/rc.S、/etc/profile、/etc/.prof

12、ile等,自動掛裝文件系統(tǒng)的配置文件/etc/fstab,具體情況會隨系統(tǒng)不同而不同。根文件系統(tǒng)在嵌入式系統(tǒng)中一般設(shè)為只讀,需要使用mkcramfs genromfs等工具產(chǎn)生燒寫映像文件。2.2.6. 開發(fā)特定外設(shè)的驅(qū)動程序為特定外設(shè)編寫驅(qū)動程序并添加進內(nèi)核運行。2.2.7. 開發(fā)上層的應(yīng)用程序開發(fā)上層應(yīng)用程序之后,可以將其放入根文件系統(tǒng)中運行,也可以放入YAFFS、JFFS2文件系統(tǒng)中,有的開發(fā)不使用根文件系統(tǒng),也可直接將應(yīng)用程序和內(nèi)核設(shè)計在一起。第三章 課程設(shè)計內(nèi)容基礎(chǔ)實驗 嵌入式系統(tǒng)開發(fā)環(huán)境搭建一、 實驗?zāi)康膶η度胧较到y(tǒng)開發(fā)而言,配置宿主機-目標板開發(fā)環(huán)境、建立合適的開發(fā)工具鏈、對內(nèi)核

13、進行配置和移植等工作是進一步進行上層應(yīng)用程序開發(fā)的不可或缺的重要步驟。當(dāng)前Internet上具有豐富的Linux相關(guān)開發(fā)源代碼可供用戶下載和使用,其中包括編譯器等開發(fā)工具鏈,各種協(xié)議的支持軟件工具,以及操作系統(tǒng)自身。如何使用這些資源是本實驗的重要內(nèi)容。通過本實驗,旨在使學(xué)生能夠:1. 掌握開發(fā)主機與嵌入式開發(fā)板通信的方法2. 掌握嵌入式開發(fā)工具鏈的構(gòu)造過程3. 掌握燒寫鏡像文件到開發(fā)板的方法4. 掌握相關(guān)鏡像文件配置和編譯的過程二、實驗環(huán)境要求1)開發(fā)板準備:1.Idea6410開發(fā)板2.交叉串口線(雙母頭):用于連接開發(fā)板COM0和PC機COM口進行調(diào)試用3.USB數(shù)據(jù)線:用于下載鏡像4.電

14、源適配器:用于給開發(fā)板供電5.SD卡:用于初次燒寫時,從SD啟動6.USB接口SD讀卡器:用于在PC端燒寫啟動代碼至SD卡中2)主機環(huán)境準備:在虛擬機VMware中安裝ubuntu10.04 三、實驗準備1參照手冊UT6410-Android2.1_manual和Ubuntu安裝資料中方法在虛擬機VMware中安裝ubuntu10.042.學(xué)習(xí)“【申嵌視頻】1 體驗篇”視頻,參照“【申嵌視頻】1 體驗篇”中視頻的開發(fā)板連線方法將目標板與主機相連四、實驗步驟1. 開發(fā)主機和嵌入式開發(fā)板間的通信嵌入式內(nèi)核和應(yīng)用軟件經(jīng)過編譯和鏈接后,可以下載到嵌入式系統(tǒng)中,同時在程序運行過程中需要用戶通過控制終端輸

15、入命令,并向用戶顯示特定信息。這就需要在開發(fā)主機和嵌入式系統(tǒng)之間進行通信。串行接口是開發(fā)主機和嵌入式系統(tǒng)通信的基本手段,可以通過串行接口為嵌入式系統(tǒng)中Linux建立一個控制終端,也可以完成內(nèi)核和應(yīng)用程序的下載。嵌入式系統(tǒng)開發(fā)中四種常見串口調(diào)試工具有:超級終端、SecureCRT、DNW、minicom通過學(xué)習(xí)“【申嵌視頻】1 體驗篇”視頻和相關(guān)資料,掌握開發(fā)主機和嵌入式開發(fā)板間串口的通信的方法。2. 掌握嵌入式開發(fā)工具鏈的構(gòu)造過程交叉編譯工具鏈是指在一個體系結(jié)構(gòu)平臺下開發(fā)另一個平臺下運行的程序所需的編譯工具集。目前主機一般采用x86指令系統(tǒng),而默認的編譯器配置是將高級語言程序編譯為x86指令系

16、統(tǒng)。交叉編譯工具就是要將高級語言程序編譯成為嵌入式系統(tǒng)中特定處理器的指令系統(tǒng)(如ARM指令系統(tǒng))。 交叉編譯工具鏈包括匯編器,高級語言編譯器,連接工具和make工具等。交叉開發(fā)環(huán)境的建立實際上就是在通用PC機上安裝一個交叉開發(fā)工具鏈,這一過程包括如下步驟:創(chuàng)建編譯環(huán)境,包括準備源文件、建立編譯目錄、建立內(nèi)核頭文件建立二進制工具(binutils)建立初始編譯器(gcc)建立C語言庫(glibc)建立全套編譯器也可直接安裝開發(fā)板附帶光盤中的交叉編譯器。參照“idea6410開發(fā)板linux使用手冊”和課程設(shè)計資料中“s3c6410開發(fā)環(huán)境配置”進行交叉工具鏈的安裝和環(huán)境變量的設(shè)置。3. 掌握燒寫

17、鏡像文件到開發(fā)板的方法嵌入式開發(fā)板系統(tǒng)運行需要有bootloader、Linux內(nèi)核鏡像、根文件系統(tǒng)鏡像3個部分,參照“idea6410開發(fā)板linux使用手冊”中“第三章 燒寫鏡像文件到開發(fā)板”以及“UT6410-Android2.1_manual”手冊中“第五章 燒寫鏡像”和“【申嵌視頻】1 體驗篇”視頻內(nèi)容學(xué)習(xí)如何將鏡像文件燒寫到開發(fā)板運行。4. 掌握相關(guān)鏡像文件配置和編譯的過程參照“idea6410開發(fā)板linux使用手冊”中“第四章 編譯鏡像文件”內(nèi)容學(xué)習(xí)u-boot源碼包和kernel源碼包的編譯方法。 五、報告要求1、簡述開發(fā)主機與嵌入式開發(fā)板通信的方法2、簡述嵌入式開發(fā)工具鏈的

18、構(gòu)造過程3、簡述燒寫鏡像文件到開發(fā)板的方法4、簡述相關(guān)鏡像文件配置和編譯的過程5、說明在課程設(shè)計過程中遇到的困難和解決方法擴展實驗一 利用Autotools工具自動生成Makefile文件一、 實驗?zāi)康腗akefile文件是make工程管理不可缺少的文件,當(dāng)工程比較龐大時手動建立Makefile文件是不可行的,往往需要借助于相關(guān)的工具來實現(xiàn)。通過本實驗,旨在使學(xué)生掌握使用Autotools工具自動生成Makefile文件的方法。二、實驗環(huán)境要求主機環(huán)境:在虛擬機VMware中安裝ubuntu10.04,Autotools工具 三、實驗準備由于實驗環(huán)境不能上網(wǎng),因此我們使用離線安裝的方法進行。使

19、用ubuntu dvd安裝盤作為軟件源,參照“ubuntu dvd 軟件包讀取”中方法,將ubuntu dvd安裝盤導(dǎo)入,并打開新立得軟件包管理器查看添加情況。如果添加成功,將能夠搜索到autotools的相關(guān)安裝包,使用apt-get命令安裝,例如apt-get install autotools-dev?;騾⒄照n程設(shè)計資料中“makefile文件的自動生成” 中內(nèi)容,使用apt-get install autotools-dev命令在現(xiàn)有環(huán)境下安裝好autotools。四、實驗步驟參照教材嵌入式Linux實時操作系統(tǒng)及應(yīng)用編程和課程設(shè)計資料中“自動生成Makefile”內(nèi)容進行。五、練習(xí)用編輯器至少編寫一個.c文件,其中輸出你的學(xué)號,使用Autotools工具生成對應(yīng)的makefile文件。 六、報告要求詳細說明練習(xí)完成的步驟(包括相應(yī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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論