版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于嵌入式智能家居
遠(yuǎn)程控制器設(shè)計(jì)
答辯學(xué)生:劉淑輝(07級(jí)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè))摘要本文研究了基于linux嵌入式操作系統(tǒng),以使用arm2440為CPU的ARM9嵌入式開(kāi)發(fā)板為硬件基礎(chǔ),以LINUXREDHAT5為系統(tǒng)開(kāi)發(fā)環(huán)境,以arm-linux-gcc4.3.2為交叉編譯環(huán)境以FriendlyARMMini2440DevelopmentBoard為系統(tǒng)運(yùn)行環(huán)境的智能家居系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。通過(guò)詳細(xì)的系統(tǒng)設(shè)計(jì)過(guò)程,制定系統(tǒng),包括嵌入式操作系統(tǒng)linux內(nèi)核的定制、bootloader的移植、linux內(nèi)核的移植、文件系統(tǒng)的移植,并將其進(jìn)行解析,將相應(yīng)的命令根據(jù)通信協(xié)議轉(zhuǎn)化為相應(yīng)的控制信號(hào),接入控制電路從而控制相應(yīng)的電器。本裝置采用了四盞燈模擬家中的各種電器,通過(guò)遠(yuǎn)程的機(jī)算機(jī)來(lái)控制家里的電器。
功能模塊設(shè)計(jì)bootloader的移植
1配置和編譯linux內(nèi)核2配置和移植文件系統(tǒng)3驅(qū)動(dòng)開(kāi)發(fā)4友善之臂圖示:友善之臂主要設(shè)計(jì)方法文件系統(tǒng)的制作,移置linux2.6內(nèi)核裁剪,移置bootloader移置建立Linux開(kāi)發(fā)環(huán)境程序測(cè)試
Bootloaderstage1(匯編部分)
固件(fireware)中的boot代碼Bootloader的組成stage2(C部分)
Bootloader硬件設(shè)備初始化拷貝BootLoader的stage2到RAM空間中為加載BootLoader的stage2準(zhǔn)備RAM空間stage1(匯編部分)
設(shè)置好堆棧跳轉(zhuǎn)到stage2的C入口點(diǎn)Bootloader初始化本階段常用的硬件設(shè)備內(nèi)存映射--mmap將kernelimage文件和根文件系統(tǒng)image從flash讀到RAM空間stage2(C部分)
為內(nèi)核設(shè)置啟動(dòng)參數(shù)調(diào)用內(nèi)核Bootloader的種類Bootloader的實(shí)現(xiàn)大致可以分為以下幾類:1.Vivi由三星提供,韓國(guó)mizi公司原創(chuàng),開(kāi)放源代碼,必須使用arm-linux-gcc進(jìn)行編譯,目前已經(jīng)基本停止發(fā)展,主要適用于三星S3C24xx系列ARM芯片,用以啟動(dòng)Linux系統(tǒng),支持串口下載和網(wǎng)絡(luò)文件系統(tǒng)啟動(dòng)等常用簡(jiǎn)易功能。Bootloader的種類3.BlobBlob(BootLoaderObject)是由Jan-DerkBakkerandErikMouw發(fā)布的,是專門(mén)為StrongARM構(gòu)架下的LART設(shè)計(jì)的BootLoader。Blob支持SA1100的LART主板,但用戶也可以自行修改移植。Blob也提供兩種工作模式,在啟動(dòng)時(shí)處于正常的啟動(dòng)加載模式,但是它會(huì)延時(shí)10秒等待終端用戶按下任意鍵而將Blob切換到下載模式。如果在10秒內(nèi)沒(méi)有用戶按鍵,則Blob繼續(xù)啟動(dòng)Linux內(nèi)核。Bootloader的移植將vivi的源代碼包復(fù)制到某一個(gè)目錄,進(jìn)入該目錄,運(yùn)行以下命令:#tarxvzfvivi.tgz執(zhí)行該命令將把vivi源代碼解壓到目錄,進(jìn)入vivi源代碼目錄,執(zhí)行:#makeclean#makemenuconfig一般不需要更改任何配置,直接退出,然后執(zhí)行“make”開(kāi)始編譯,執(zhí)行結(jié)果如下:#makeARCH=armCROSS_COMPILE=arm-linux-此時(shí)已經(jīng)在當(dāng)前目錄下生成了vivi,把vivi燒寫(xiě)到目標(biāo)板的NandFlash運(yùn)行。配置和編譯linux內(nèi)核1主
機(jī):VMWare—redhat9
2開(kāi)發(fā)板:Mini2440--64MBNand
3編譯器:arm-linux-gcc-4.3.2移植環(huán)境linux內(nèi)核的組成部分進(jìn)程調(diào)度
內(nèi)在管理
虛擬文件系統(tǒng)
網(wǎng)絡(luò)接口
進(jìn)程通信
Linux內(nèi)核移植過(guò)程(1)將所有文件復(fù)制到工作目錄下,然后解壓內(nèi)核文件和編譯器文件。(2)為內(nèi)核打補(bǔ)丁。(3)修改Makefile,修改編譯環(huán)境。(4)修改machineID。如果這一步省略,會(huì)在移植到開(kāi)發(fā)板后Bootloader引導(dǎo)的時(shí)候出現(xiàn)機(jī)器ID錯(cuò)誤的現(xiàn)象。出錯(cuò)的ID號(hào)將以十六進(jìn)制給出,將其轉(zhuǎn)化為十進(jìn)制,替換mach-types文件中的對(duì)應(yīng)項(xiàng)。這里移植后報(bào)的錯(cuò)誤是0xFB,即對(duì)應(yīng)十進(jìn)制251。(5)制作uImage文件。在內(nèi)核目錄下建議一個(gè)名為mkimage的文件(6)對(duì)內(nèi)核進(jìn)行配置。執(zhí)行makeat91rm9200dk_defconfig實(shí)際上就是完成對(duì)內(nèi)核的配置。(7)編譯內(nèi)核生成映像文件。Linux內(nèi)核移植過(guò)程內(nèi)核移植過(guò)程圖文件系統(tǒng)的配置與移植根文件系統(tǒng)是linux啟動(dòng)時(shí)使用的第一個(gè)文件系統(tǒng),沒(méi)有根文件系統(tǒng)性,linux將無(wú)法正常啟動(dòng)。根文件系統(tǒng)由一系列目錄組成,目錄中包括了應(yīng)用程序,C庫(kù)以及相關(guān)的配置文件。文件系統(tǒng)的配置與移植
Linux支持多種文件系統(tǒng),常用的基于存儲(chǔ)設(shè)備的文件系統(tǒng)類型包括:jffs2,yaffs,cramfs,等。本次設(shè)計(jì)采用的是yaffs2。
yaffs2是專為嵌入式系統(tǒng)使用NAND型閃存而設(shè)計(jì)的一種日志型文件系統(tǒng)。與jffs2相比,它減少了一些功能(例如不支持?jǐn)?shù)據(jù)壓縮),所以速度更快,掛載時(shí)間很短,對(duì)內(nèi)存的占用較小。另外,它還是跨平臺(tái)的文件系統(tǒng),除了Linux和eCos,還支持WinCE,pSOS和ThreadX等。文件系統(tǒng)移植過(guò)程1.創(chuàng)建根文件系統(tǒng)的目錄2.創(chuàng)建設(shè)備文件3.安裝/etc4.編譯內(nèi)核模塊5.安裝內(nèi)核模塊6.配置busybox7.編譯,安裝busbox8.制作yaffs文件系統(tǒng)映象Linux驅(qū)動(dòng)開(kāi)發(fā)驅(qū)動(dòng)程序在Linux內(nèi)核里扮演著特殊的角色.它們是截然不同的“黑盒子”,使硬件的特殊的一部分響應(yīng)定義好的內(nèi)部編程接口.它們完全隱藏了設(shè)備工作的細(xì)節(jié).用戶的活動(dòng)通過(guò)一套標(biāo)準(zhǔn)化的調(diào)用來(lái)進(jìn)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度膩?zhàn)赢a(chǎn)品銷售與售后服務(wù)合同2篇
- 二零二五年度環(huán)保技術(shù)開(kāi)發(fā)合伙投資合同
- 2024版學(xué)校污水處理設(shè)施清掏協(xié)議版B版
- 忻州師范學(xué)院《建筑工程評(píng)估基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年水利工程勞務(wù)派遣與設(shè)備租賃合同3篇
- 西安工商學(xué)院《圖像處理》2023-2024學(xué)年第一學(xué)期期末試卷
- 武漢警官職業(yè)學(xué)院《低頻模擬電路》2023-2024學(xué)年第一學(xué)期期末試卷
- 文山學(xué)院《房屋建筑學(xué)課程設(shè)討》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年生物制藥技術(shù)轉(zhuǎn)讓及合作開(kāi)發(fā)協(xié)議2篇
- 二零二五年度廠長(zhǎng)任期企業(yè)戰(zhàn)略規(guī)劃與執(zhí)行合同2篇
- 2024年滄州經(jīng)濟(jì)開(kāi)發(fā)區(qū)招聘社區(qū)工作者筆試真題
- 中外美術(shù)史試題及答案
- 2025年安徽省銅陵市公安局交警支隊(duì)招聘交通輔警14人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 公共政策分析 課件 第8章政策評(píng)估;第9章政策監(jiān)控
- 人教版八年級(jí)上學(xué)期物理期末復(fù)習(xí)(壓軸60題40大考點(diǎn))
- 企業(yè)環(huán)保知識(shí)培訓(xùn)課件
- 2024年度管理評(píng)審報(bào)告
- 暨南大學(xué)《微觀經(jīng)濟(jì)學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 醫(yī)藥銷售合規(guī)培訓(xùn)
- DB51-T 5038-2018 四川省地面工程施工工藝標(biāo)準(zhǔn)
- 三年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)附答案
評(píng)論
0/150
提交評(píng)論