嵌入式Linux綜合項(xiàng)目實(shí)例_第1頁
嵌入式Linux綜合項(xiàng)目實(shí)例_第2頁
嵌入式Linux綜合項(xiàng)目實(shí)例_第3頁
嵌入式Linux綜合項(xiàng)目實(shí)例_第4頁
嵌入式Linux綜合項(xiàng)目實(shí)例_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第10章

嵌入式Linux綜合項(xiàng)目實(shí)例

第十章嵌入式Linux綜合項(xiàng)目實(shí)例嵌入式Linux在實(shí)際中的應(yīng)用非常廣泛,本書前面各章介紹了嵌入式各個(gè)模塊、各個(gè)軟硬件的原理和實(shí)驗(yàn),本章將向讀者介紹一些基于嵌入式Linux的實(shí)際項(xiàng)目。讀者通過閱讀前面內(nèi)容,已經(jīng)有了嵌入式的概念,初步了解了如何開發(fā)簡單的嵌入式程序,理解了嵌入式編程的一般流程以及軟硬件環(huán)境的使用。在此基礎(chǔ)上,我們將綜合利用各個(gè)模塊、軟硬件環(huán)境開發(fā)具體的實(shí)際項(xiàng)目。主要內(nèi)容

第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)

第二節(jié)硬件設(shè)計(jì)基礎(chǔ)知識(shí)

第三節(jié)硬件設(shè)計(jì)中應(yīng)注意的一些問題

1一、系統(tǒng)功能框圖

二、功能簡介

三、體系結(jié)構(gòu)四、功能解析圖五、基本設(shè)計(jì)概念六、效果圖第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)

23第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)——一、系統(tǒng)結(jié)構(gòu)

本系統(tǒng)基于客戶/服務(wù)器結(jié)構(gòu),ARM2410S嵌入式開發(fā)板作為電梯服務(wù)端,PC機(jī)為客戶端??蛻舳嗽贚inux下開發(fā),客戶端和服務(wù)端之間通過Socket通信4第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)——二、功能簡介

視頻圖像采集結(jié)構(gòu):根據(jù)Video4Linux標(biāo)準(zhǔn)視頻接口進(jìn)行編程時(shí)所采用的結(jié)構(gòu)體,包括視頻采集部分的4個(gè)關(guān)鍵結(jié)構(gòu)體video_capability、video_picture、video_mbuf、video_mmap。鍵盤驅(qū)動(dòng)file_operations數(shù)據(jù)結(jié)構(gòu):縮減基本鍵盤驅(qū)動(dòng)功能建立的鍵盤驅(qū)動(dòng)結(jié)構(gòu)體,如open()、close()、read()等等。電梯運(yùn)行結(jié)構(gòu):模擬電梯的基本結(jié)構(gòu),主要包括當(dāng)前電梯的狀態(tài)、上下樓狀態(tài)、目標(biāo)樓層數(shù)組和當(dāng)前電梯所在的樓層。一旦模擬電梯開發(fā)運(yùn)行就會(huì)不斷更新該結(jié)構(gòu)體內(nèi)數(shù)據(jù)。Socket網(wǎng)絡(luò)傳輸結(jié)構(gòu):選用的網(wǎng)絡(luò)傳輸協(xié)議、客戶機(jī)IP、客戶機(jī)進(jìn)程端口號(hào)、服務(wù)器端IP和服務(wù)器端進(jìn)程端口號(hào)。緩沖區(qū)結(jié)構(gòu):圖像緩沖區(qū)為JPEG文件,電梯緩沖區(qū)為電梯數(shù)據(jù)結(jié)構(gòu)體,Socket網(wǎng)絡(luò)傳輸緩沖區(qū)是長度為1000個(gè)字節(jié)的字符數(shù)組。QT界面顯示結(jié)構(gòu):在監(jiān)控中心接收服務(wù)器端傳送過來的圖像和電梯數(shù)據(jù)信息后利用QT界面進(jìn)行顯示.。QT界面上分成兩個(gè)區(qū),左半?yún)^(qū)采用Qframe控件用于視頻圖像的顯示,右半?yún)^(qū)采用Qpushbutton按鈕用于顯示電梯數(shù)據(jù)。5第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)——三、體系結(jié)構(gòu)

6第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)——四、功能解析圖

7第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)——五、基本設(shè)計(jì)概念(1)服務(wù)器端視頻采集模塊:采用WEBEYEV2000攝像頭,編譯并加載OV511驅(qū)動(dòng)程序;利用Video4Linux標(biāo)準(zhǔn)視頻處理接口進(jìn)行視頻圖像的采集;交叉編譯JPEG庫并移植至開發(fā)板,從而實(shí)現(xiàn)對(duì)視頻圖像數(shù)據(jù)的JPEG壓縮,以減小網(wǎng)絡(luò)傳輸負(fù)擔(dān)。小鍵盤電梯模擬模塊:17鍵小鍵盤區(qū)模擬電梯的按鈕區(qū),鍵盤1~9數(shù)字鍵分別對(duì)應(yīng)電梯的9個(gè)樓層,適當(dāng)修改鍵盤驅(qū)動(dòng),使其能夠隨時(shí)讀取鍵值;同時(shí)選擇同方向優(yōu)先的電梯算法實(shí)現(xiàn)電梯的運(yùn)行。Socket網(wǎng)絡(luò)傳輸模塊:采用Linux下的Socket編程方法,利用TCP協(xié)議建立現(xiàn)場和監(jiān)控中心的連接并發(fā)送相關(guān)數(shù)據(jù)。(2)客戶端Socket網(wǎng)絡(luò)接收模塊:采用Linux下的Socket編程方法,利用TCP協(xié)議建立現(xiàn)場和監(jiān)控中心的連接并接收相關(guān)數(shù)據(jù)??蛻舳孙@示模塊:將服務(wù)器端采集的視頻圖像和電梯運(yùn)行狀態(tài)直觀地顯示在客戶端主機(jī)上。8第一節(jié)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)——六、效果圖一、系統(tǒng)功能框圖

二、功能簡介

三、體系結(jié)構(gòu)四、基本設(shè)計(jì)概念五、效果圖第二節(jié)基于藍(lán)牙技術(shù)的嵌入式點(diǎn)菜系統(tǒng)

9第二節(jié)基于藍(lán)牙技術(shù)的嵌入式點(diǎn)菜系統(tǒng)——一、系統(tǒng)功能框圖

10本系統(tǒng)采用C/S結(jié)構(gòu),以上述模型為原型,實(shí)現(xiàn)了簡單的基于藍(lán)牙技術(shù)的點(diǎn)菜系統(tǒng)。將嵌入式開發(fā)板ARM2410S作為無線點(diǎn)菜器,即客戶端;PC機(jī)作為后臺(tái)管理端,即服務(wù)器端,服務(wù)器端在Linux下開發(fā)??蛻舳撕头?wù)器端之間通過藍(lán)牙進(jìn)行無線通信服務(wù)器端有數(shù)據(jù)庫,用于存儲(chǔ)菜單信息和消費(fèi)信息。為了方便,在客戶端也創(chuàng)建了數(shù)據(jù)庫,其中存儲(chǔ)了菜單信息和房間信息,因此客戶端不能很好地動(dòng)態(tài)共享菜單信息和房間使用信息,所以本系統(tǒng)只適合點(diǎn)對(duì)點(diǎn)方式。第二節(jié)基于藍(lán)牙技術(shù)的嵌入式點(diǎn)菜系統(tǒng)——二、功能簡介

11第二節(jié)基于藍(lán)牙技術(shù)的嵌入式點(diǎn)菜系統(tǒng)——三、體系結(jié)構(gòu)

12客戶端1)開臺(tái)點(diǎn)菜模塊通過Qt圖形界面,客戶可以選擇房間即開臺(tái),進(jìn)入房間并將該房間置為使用狀態(tài)后便可以點(diǎn)菜,然后進(jìn)入該類菜的詳細(xì)菜單的選擇??蛻酎c(diǎn)完所要的菜后,便可提交,通過藍(lán)牙傳輸模塊將所點(diǎn)的菜傳到服務(wù)器端。2)藍(lán)牙傳輸模塊客戶端的藍(lán)牙數(shù)據(jù)傳輸主要包括點(diǎn)菜信息的發(fā)送和結(jié)賬房間信息的接收服務(wù)端1)菜單管理模塊通過Qt圖形界面的相關(guān)操作與數(shù)據(jù)庫中菜單信息表的交互,服務(wù)器端可以對(duì)菜單進(jìn)行管理(即增加、刪除和修改菜單信息)。2)消費(fèi)結(jié)賬模塊通過Qt圖形界面的相關(guān)操作與數(shù)據(jù)庫中消費(fèi)信息表的交互,服務(wù)器端可以實(shí)現(xiàn)消費(fèi)結(jié)賬功能,即選擇某個(gè)房間查詢并顯示此房間所點(diǎn)菜的信息。3)藍(lán)牙傳輸模塊服務(wù)器端的藍(lán)牙數(shù)據(jù)傳輸主要包括點(diǎn)菜信息的接收和結(jié)賬房間信息的發(fā)送。第二節(jié)基于藍(lán)牙技術(shù)的嵌入式點(diǎn)菜系統(tǒng)——四、基本設(shè)計(jì)概念13第二節(jié)基于藍(lán)牙技術(shù)的嵌入式點(diǎn)菜系統(tǒng)——五、效果圖14一、系統(tǒng)功能框圖

二、功能簡介

三、體系結(jié)構(gòu)四、基本設(shè)計(jì)概念五、效果圖第三節(jié)基于WebService的數(shù)字油田監(jiān)控系統(tǒng)

15第三節(jié)基于WebService的數(shù)字油田監(jiān)控系統(tǒng)——一、系統(tǒng)功能框圖16現(xiàn)場設(shè)備服務(wù)端現(xiàn)場設(shè)備服務(wù)端包括直流電機(jī)服務(wù)端和視頻采集服務(wù)端兩部分。直流電機(jī)服務(wù)端接收監(jiān)控中心的控制數(shù)據(jù),控制直流電機(jī)的運(yùn)轉(zhuǎn)狀態(tài)。同時(shí),采集直流電機(jī)的相關(guān)信息,當(dāng)監(jiān)控中心請求這些數(shù)據(jù)時(shí)將這些數(shù)據(jù)發(fā)送到監(jiān)控中心。視頻采集服務(wù)端接收監(jiān)控中心的視頻采集圖像屬性參數(shù),設(shè)置攝像頭圖像采集參數(shù),調(diào)節(jié)圖像畫面效果,并將視頻采集圖屬性參數(shù)發(fā)送到監(jiān)控中心。監(jiān)控中心監(jiān)控中心是整個(gè)系統(tǒng)的中心部件,對(duì)系統(tǒng)中的數(shù)據(jù)進(jìn)行處理、存儲(chǔ),完成數(shù)據(jù)的路由和分發(fā)并監(jiān)視系統(tǒng)中各個(gè)設(shè)備的狀態(tài),為進(jìn)行故障診斷與維護(hù)作準(zhǔn)備。監(jiān)控中心發(fā)送直流電機(jī)控制數(shù)據(jù)到直流電機(jī)服務(wù)端來控制直流電機(jī)的運(yùn)行;獲取現(xiàn)場設(shè)備信息,實(shí)時(shí)監(jiān)視油井運(yùn)行情況;接收視頻采集服務(wù)端傳過來的視頻數(shù)據(jù)并顯示,獲取視頻圖像屬性參數(shù),并可以隨時(shí)調(diào)節(jié)視頻采集圖像屬性;接收移動(dòng)終端的直流電機(jī)控制數(shù)據(jù),轉(zhuǎn)發(fā)至直流電機(jī)服務(wù)器端來控制直流電機(jī),并將現(xiàn)場環(huán)境狀態(tài)參數(shù)發(fā)送到移動(dòng)終端。移動(dòng)控制終端移動(dòng)控制終端只對(duì)直流電機(jī)進(jìn)行監(jiān)控,從監(jiān)控中心獲取現(xiàn)場設(shè)備信息并進(jìn)行顯示。操作人員根據(jù)這些信息,調(diào)節(jié)直流電機(jī)控制數(shù)據(jù),發(fā)送至監(jiān)控中心控制、調(diào)節(jié)直流電機(jī)的運(yùn)行狀態(tài)。第三節(jié)基于WebService的數(shù)字油田監(jiān)控系統(tǒng)——二、功能簡介17第三節(jié)基于WebService的數(shù)字油田監(jiān)控系統(tǒng)——三、體系結(jié)構(gòu)18第三節(jié)基于WebService的數(shù)字油田監(jiān)控系統(tǒng)——四、基本設(shè)計(jì)概念19第三節(jié)基于WebService的數(shù)字油田監(jiān)控系統(tǒng)——五、效果圖20一、系統(tǒng)功能框圖

二、功能簡介

三、體系結(jié)構(gòu)四、數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)五、效果圖第四節(jié)基于嵌入式與WebService的智能家居系統(tǒng)

21第四節(jié)基于嵌入式與WebService的智能家居系統(tǒng)——一、系統(tǒng)功能框圖

22本系統(tǒng)實(shí)現(xiàn)了多種服務(wù)訪問方式,客戶端PocketPC通過WebService調(diào)用Web服務(wù)端上提供的各項(xiàng)服務(wù),實(shí)現(xiàn)遠(yuǎn)程家居系統(tǒng)的監(jiān)控。同時(shí),在服務(wù)端建立了站點(diǎn),可以通過網(wǎng)頁方式方便地進(jìn)行本地或遠(yuǎn)程的查詢與控制操作。所以,本系統(tǒng)使用靈活,既可以用智能設(shè)備PDA,也可以通過網(wǎng)頁來進(jìn)行操作。本系統(tǒng)可以基于SQLServer數(shù)據(jù)庫實(shí)現(xiàn)家庭信息(如財(cái)政信息、物資信息、事物信息、菜譜信息、健康信息等)的管理和使用本系統(tǒng)的用戶信息(注冊用戶)、正在使用的用戶信息(在線用戶)等的管理以及基于嵌入式平臺(tái)的家庭設(shè)備(如大門、電飯鍋、空調(diào)、濕度機(jī)、機(jī)器管家、視頻監(jiān)控等)的管理。所有家居系統(tǒng)的監(jiān)控功能都是以Web服務(wù)的方式在服務(wù)端實(shí)現(xiàn)的,客戶端通過遠(yuǎn)程調(diào)用服務(wù)端提供的Web服務(wù)方法實(shí)現(xiàn)本系統(tǒng)的管理。服務(wù)端的SQLServer數(shù)據(jù)庫中存儲(chǔ)了各種家庭信息,通過數(shù)據(jù)庫操作來響應(yīng)遠(yuǎn)程客戶查詢與更新家庭信息的服務(wù)請求,通過與嵌入式開發(fā)板交互來響應(yīng)遠(yuǎn)程客戶監(jiān)控家庭設(shè)備的服務(wù)請求。第四節(jié)基于嵌入式與WebService的智能家居系統(tǒng)——二、功能簡介23第四節(jié)基于嵌入式與WebService的智能家居系統(tǒng)——三、體系結(jié)構(gòu)24第四節(jié)基于嵌入式與WebService的智能家居系統(tǒng)——四、數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)25第四節(jié)基于嵌入式與WebService的智能家居系統(tǒng)——五、效果圖26一、功能簡介

二、音視頻數(shù)據(jù)在雙處理器間的傳輸模塊設(shè)計(jì)三、音頻處理方案設(shè)計(jì)

四、視頻處理方案設(shè)計(jì)

第五節(jié)基于OMAP的音頻與視頻處理

27本節(jié)設(shè)計(jì)的方案是基于OMAP5910開發(fā)平臺(tái)的,我們可以將OMAP5910中的DSP和ARM描述為兩個(gè)“終端”,本節(jié)設(shè)計(jì)的總體方案為:在ARMLINUX開發(fā)環(huán)境下開發(fā)ARM端的應(yīng)用程序,在TI提供的CCS開發(fā)環(huán)境下完成DSP端的程序。兩個(gè)程序在運(yùn)行時(shí),ARM端作為音視頻數(shù)據(jù)的輸入端,傳到DSP端進(jìn)行處理,然后再把處理后的結(jié)果返回到ARM端,并進(jìn)行顯示或播放等處理。當(dāng)然,ARM端還有一些控制功能。這樣就充分利用了OMAP5910的雙核結(jié)構(gòu),實(shí)現(xiàn)了音視頻數(shù)據(jù)的高效處理,提高了多媒體應(yīng)用的性能。OMAP5910中的ARM核和DSP核之間的通信通過DSPGateway機(jī)制實(shí)現(xiàn)。DSPGateway能夠支持OMAP5910構(gòu)架的OMAP處理器,它主要包含兩部分:一是ARM端的Linux驅(qū)動(dòng)程序,二是DSP端的基于DSPBIOS的一個(gè)實(shí)時(shí)內(nèi)核及它上面的API。它使得開發(fā)DSP端的程序變得很簡單,只需熟悉了DSPGateway的API函數(shù)就能方便地在DSP上實(shí)現(xiàn)多任務(wù)管理第五節(jié)基于OMAP的音頻與視頻處理——一、功能簡介28在DSP端設(shè)計(jì)并實(shí)現(xiàn)音視頻處理程序,利用ARM核來控制音視頻數(shù)據(jù)流的輸入輸出??紤]到數(shù)據(jù)量比較大,這里采用DSP端的被動(dòng)塊接收和被動(dòng)塊發(fā)送方式傳遞數(shù)據(jù)第五節(jié)基于OMAP的音頻與視頻處理——二、音視頻數(shù)據(jù)在雙處理器間的傳輸模塊設(shè)計(jì)29音頻部分的處理主要是利用MPEG中的MP3編碼標(biāo)準(zhǔn),在DSP端實(shí)現(xiàn)對(duì)音頻數(shù)據(jù)流的壓縮處理,在ARM端實(shí)現(xiàn)對(duì)設(shè)備的控制以及對(duì)數(shù)據(jù)的輸入輸出控制。通過下載移植MP3編解碼程序,并修改相應(yīng)的Makefile文件,將MP3編解碼程序移植到開發(fā)板上,使得MP3編解碼程序能夠在OMAP5910開發(fā)板上運(yùn)行。然后利用DSPGateway通信技術(shù),完成ARM和DSP在處理前與處理后的數(shù)據(jù)交互。第五節(jié)基于OMAP的音頻與視頻處理——三、音頻處理方案設(shè)計(jì)301.ARM端ARM端是基于ARM9核的TI925T處理器,是這個(gè)多媒體應(yīng)用平臺(tái)的核心。它的任務(wù)為:打開設(shè)備文件;讀取視頻文件中的視頻數(shù)據(jù)并根據(jù)DSP端的接收能力將視頻數(shù)據(jù)發(fā)送到DSP端;發(fā)送控制信息到DSP端,視頻數(shù)據(jù)經(jīng)過DSP端的處理后,接收處理后的結(jié)果并輸出2.DSP端DSP核的優(yōu)點(diǎn)就是能高效處理大量數(shù)據(jù),所以視頻數(shù)據(jù)的壓縮處理放在DSP端執(zhí)行。根據(jù)MPEG-2編碼原理,主要有以下幾個(gè)功能模塊:離散余弦變換(DCT)量化和逆量化模塊之型掃描運(yùn)動(dòng)估計(jì)模塊運(yùn)動(dòng)補(bǔ)償預(yù)測模塊變長編碼模塊第五節(jié)基于OMAP的音頻與視頻處理——四、視頻處理方案設(shè)計(jì)31本章以項(xiàng)目實(shí)例的形式,講述了嵌入式linux系統(tǒng)開發(fā),主要包括基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)、基于藍(lán)牙的無線點(diǎn)菜系統(tǒng)、基于WebService的數(shù)字油田監(jiān)控系統(tǒng)、基于嵌入式與WebService的智能家居系統(tǒng)、基于OMAP的音頻與視頻處理。這些項(xiàng)目是根據(jù)實(shí)際應(yīng)用進(jìn)行了簡單的實(shí)現(xiàn)或模擬,主要是給讀者一個(gè)設(shè)計(jì)思路,讓讀者理解與掌握如何根據(jù)現(xiàn)有的嵌入式環(huán)境開發(fā)實(shí)際項(xiàng)目,從而提升嵌入式linux系統(tǒng)開發(fā)能力。小結(jié)32請同學(xué)根據(jù)自己的興趣,在以下可選題目中任選一題,成立小組(根據(jù)難度系數(shù),2-4人/組),并指定一負(fù)責(zé)人,規(guī)劃相關(guān)的工作,每小組通過協(xié)作完成大作業(yè),并提交相關(guān)報(bào)告與相關(guān)源程序代碼。可選題目為:1)基于嵌入式平臺(tái)的電梯監(jiān)控系統(tǒng)(難度系數(shù)0.8)2)基于藍(lán)牙的無線點(diǎn)菜系統(tǒng)(難度系數(shù)0.7)3)基于WebService的數(shù)字油田監(jiān)控系統(tǒng)(難度系數(shù)1.0)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論