嵌入式單片機原理 第十二章概要_第1頁
嵌入式單片機原理 第十二章概要_第2頁
嵌入式單片機原理 第十二章概要_第3頁
嵌入式單片機原理 第十二章概要_第4頁
嵌入式單片機原理 第十二章概要_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程重點內(nèi)容:重點內(nèi)容:l系統(tǒng)設(shè)計背景系統(tǒng)設(shè)計背景l(fā)系統(tǒng)總體設(shè)計系統(tǒng)總體設(shè)計l系統(tǒng)詳細設(shè)計系統(tǒng)詳細設(shè)計l系統(tǒng)測試系統(tǒng)測試嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程在國民經(jīng)濟快速發(fā)展,人民生活質(zhì)量普遍提高的背景下,視頻監(jiān)控系統(tǒng)已經(jīng)越來越廣泛的出現(xiàn)于銀行、交通部門、政府部門、學校、軍隊、家庭等各種場合,視頻應(yīng)用也呈現(xiàn)出多樣化的發(fā)展趨勢,并具有越來越多的數(shù)字化,網(wǎng)絡(luò)化,實時性等特性。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 目前國內(nèi)外市場上大部分視頻監(jiān)控系統(tǒng),無論是數(shù)字控制的模擬視頻監(jiān)控系統(tǒng)還是數(shù)字視頻監(jiān)控系統(tǒng),大都采用了專門的軟、硬件和專用的視頻信號傳輸系統(tǒng),這造成了比

2、較昂貴的價格,阻礙了視頻監(jiān)控系統(tǒng)的進一步普及。嵌入式系統(tǒng)的設(shè)備一般都具有體積小、性能強、功耗低、可靠性高以及成本相對較低的突出特征,在監(jiān)控領(lǐng)域,嵌入式的應(yīng)用也是越來越廣泛,尤其是隨著32位嵌入式微處理器和數(shù)字信號處理器應(yīng)用的普及性能的不斷提高,嵌入式系統(tǒng)在視頻監(jiān)控領(lǐng)域得到了很大發(fā)展。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程1. 系統(tǒng)總體設(shè)計思路2. 系統(tǒng)的設(shè)計要求及特點3. 系統(tǒng)總體架構(gòu)設(shè)計嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程系統(tǒng)總體構(gòu)架嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 依照要求,在實現(xiàn)網(wǎng)絡(luò)視頻監(jiān)控功能的前提下,本系統(tǒng)主要有以下幾個特點:系統(tǒng)實現(xiàn)視頻監(jiān)控及相關(guān)功能成本較低;保證硬件設(shè)備兼

3、容性、通用性、穩(wěn)定性;具有一定安全性(用戶識別、身份認證機制);較好的系統(tǒng)設(shè)計延續(xù)性及功能可擴展性。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(1)系統(tǒng)的硬件架構(gòu)(2)系統(tǒng)的軟件結(jié)構(gòu)(3)系統(tǒng)的安全性考慮(4)系統(tǒng)的可擴展性嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(1)系統(tǒng)的硬件架構(gòu)嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)系統(tǒng)的軟件結(jié)構(gòu) 系統(tǒng)的軟件構(gòu)架主要由三個個模塊組成,即USB驅(qū)動模塊,網(wǎng)絡(luò)視頻服務(wù)器模塊和終端視頻信號處理模塊。 USB驅(qū)動模塊中包含了USB總線驅(qū)動,USB攝像頭數(shù)據(jù)輸入驅(qū)動,這個模塊的功能即驅(qū)動攝像頭設(shè)備并采集視頻信號。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)系統(tǒng)的軟件

4、結(jié)構(gòu) 視頻服務(wù)器模塊包括視頻信號處理模塊和基于TCP/IP協(xié)議的視頻信號傳輸程序模塊,這個模塊的功能即處理攝像頭采集到的視頻信號并將視頻信號傳輸?shù)奖辉试S的視頻監(jiān)控終端。 終端視頻信號處理模塊包括視頻信號接收、存儲及播放程序。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(3)系統(tǒng)的安全性考慮 在本設(shè)計中,由于系統(tǒng)需要接入Internet以實現(xiàn)網(wǎng)絡(luò)視頻監(jiān)控功能,故需要考慮到數(shù)據(jù)傳輸中的安全性問題。綜合本設(shè)計的ARM-Linux操作系統(tǒng)及使用的硬件設(shè)備的考慮,采用如下方式保證系統(tǒng)的安全性:在嵌入式視頻服務(wù)器軟件內(nèi)做IP地址過濾,對視頻信號傳輸請求的IP地址過濾。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(4)

5、系統(tǒng)的可擴展性 Linux操作系統(tǒng)本身是一個功能非常強大,尤其是網(wǎng)絡(luò)功能非常強大的操作系統(tǒng),其針對ARM處理器的嵌入式版本ARM-Linux,同樣的具有上述的特點?;诒鞠到y(tǒng)的硬件設(shè)計及其ARM-Linux操作系統(tǒng),系統(tǒng)可以在本地存儲擴展、視頻信號壓縮處理、簡單的圖像的識別、系統(tǒng)的網(wǎng)絡(luò)安全等等幾個方面還有進一步擴展的余地以及功能的提高的空間。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程1.系統(tǒng)的硬件設(shè)計與調(diào)試2.系統(tǒng)的軟件設(shè)計與調(diào)試3.USB數(shù)據(jù)輸入驅(qū)動移植4.USB攝像頭數(shù)據(jù)輸入驅(qū)動測試5.嵌入式網(wǎng)絡(luò)視頻服務(wù)器的設(shè)計6.Video4Linux程序設(shè)計嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(1)總體

6、硬件模塊(2)USB攝像裝置(3)系統(tǒng)調(diào)試接口嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(1)總體硬件模塊本系統(tǒng)以S3C2440芯片為核心進行外圍功能芯片及電路的擴展的硬件模塊圖嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)USB攝像裝置 本設(shè)計中采用的視頻攝像的實驗裝置為目前使用廣泛的采用USB輸出的數(shù)字攝像頭。數(shù)字攝像頭的工作原理為:景物通過鏡頭(LENS)生成的光學圖像投射到圖像傳感器表面上,轉(zhuǎn)為電信號,經(jīng)過模數(shù)轉(zhuǎn)換(A/D)轉(zhuǎn)換后變?yōu)閿?shù)字信號,再送到專用的數(shù)字信號處理芯片(DSP)中進行壓縮編碼處理,再通過接口電路傳輸?shù)絇C中進行處理。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)USB攝像裝

7、置 采用USB輸出的數(shù)字攝像頭相比其他種類的視頻采集裝置,其優(yōu)點比較明顯: 分辨率一般都大于或等于30萬象素,均可實現(xiàn)VGA級(640 x480)的壓縮視頻信號輸出; 內(nèi)置專用DSP芯片,可對原始視頻信號做前期壓縮編碼處理,減少系統(tǒng)中MCU時間占用與程序編寫的工作量;一般采用USB數(shù)據(jù)輸入的數(shù)字攝像頭價格較低,使系統(tǒng)成本進一步降低。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)USB攝像裝置 USB接口傳輸速度較快,且向下兼容低版本協(xié)議,USB1.1接口設(shè)備其帶寬也完全滿足VGA級壓縮視頻數(shù)據(jù)傳輸。 一般采用USB數(shù)據(jù)輸入的數(shù)字攝像頭價格較低,使系統(tǒng)成本進一步降低。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)

8、教程教程(2)USB攝像裝置 基本知識:1)USB總線 USB英文全名為Universal Serial Bus,即通用串行總線,是目前應(yīng)用最為廣泛的一種連接外圍設(shè)備的總線標準。其最大的優(yōu)點在于支持USB設(shè)備支持硬件設(shè)備的熱插拔,并且可以通過一個USB控制器管理最多7級127個USB設(shè)備。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)USB攝像裝置1)USB總線 USB總線目前有USB1.1和USB2.0兩種協(xié)議標準,理論傳輸速度分別為12Mbps/s和480Mbps/s,無論是前者,還是后者,其傳輸帶寬理論上均可以滿足分辨率為640 x480、15f/s的VGA級別的視頻信號傳輸要求。嵌入式嵌

9、入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)USB攝像裝置 2)S3C2440 USB接口電路 在S3C2440片內(nèi)集成了一個USB Host Controller,也就是說它是可以直接通過USB硬件接口電路與USB設(shè)備相連接,并可以通過USB HUB進行USB設(shè)備數(shù)量的擴展。S3C2440的USB Host Controller是符合USB 1.1的協(xié)議標準的硬件控制器,由于USB協(xié)議的向下兼容性,符合USB 2.0協(xié)議標準的設(shè)備同樣可以接在這個接口上使用USB 1.1的協(xié)議進行數(shù)據(jù)傳輸。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)USB攝像裝置2)S3C2440 USB接口電路嵌入式嵌入式Linu

10、x基礎(chǔ)基礎(chǔ)教程教程(3)系統(tǒng)調(diào)試接口 本設(shè)計使用RS232串口作為系統(tǒng)的調(diào)試接口與PC機進行通信。系統(tǒng)與PC機通過串口線連接,加電后在PC機上使用Linux操作系統(tǒng)下的Minicom或Windows操作系統(tǒng)下的超級終端等串口終端軟件即可以查看系統(tǒng)輸出的啟動、運行狀態(tài)信息并可以通過輸入命令行進行系統(tǒng)配置或運行相關(guān)程序。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(3)系統(tǒng)調(diào)試接口S3C2440通過MAX232串口接口芯片連接到兩個9針RS232接口電路嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(1)嵌入式Linux開發(fā)環(huán)境的構(gòu)建(2)Linux下通用USB攝像頭數(shù)據(jù)輸入驅(qū)動(3)SPCA5xx通用驅(qū)動的架

11、構(gòu)(4)SPCA5xx通用驅(qū)動核心程序分析嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(1)嵌入式Linux開發(fā)環(huán)境的構(gòu)建 按照教材第七、八、九、十章介紹的方法建立一個完整的嵌入式Linux基本系統(tǒng),這里限于篇幅,我們就不重復了。下面我們重點介紹USB攝像頭的驅(qū)動設(shè)計。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(2)Linux下通用USB攝像頭數(shù)據(jù)輸入驅(qū)動 本設(shè)計中使用的是針對Linux2.6版本內(nèi)核的spca5xx-Light-Edition,這個版本的特點是編譯生成后的驅(qū)動程序文件體積比較小,節(jié)省驅(qū)動加載及應(yīng)用程序運行的存儲空間,比較適合運行嵌入式Linux的嵌入式系統(tǒng)使用。嵌入式嵌入式Linux基

12、礎(chǔ)基礎(chǔ)教程教程(2)Linux下通用USB攝像頭數(shù)據(jù)輸入驅(qū)動 經(jīng)過對源代碼的研究與分析,spca5xx-Light-Edition與其他版本在功能上的不同之處主要在于: 減少了音頻部分的驅(qū)動及接口函數(shù),簡化了應(yīng)用程序的編寫; 減少了對視頻信號的JPEG編碼、壓縮的功能,大大減少系統(tǒng)中CPU的工作量,更適合低工作頻率、無協(xié)處理器的嵌入式MCU使用。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(3)SPCA5xx通用驅(qū)動的架構(gòu) Spac5xx的實現(xiàn)是按照標準的USB Video設(shè)備的驅(qū)動框架編寫,整個程序由三個主要模塊組成(/usr/src/linux/drivers/usb/usbvideo.c):

13、1) USB設(shè)備模塊的初始化模塊和卸載模塊; 2)上層軟件接口模塊; 3)數(shù)據(jù)傳輸模塊。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(4)SPCA5xx通用驅(qū)動核心程序分析 1)USB設(shè)備模塊的初始化模塊和卸載模塊 在設(shè)備模塊的初始化模塊和卸載模塊中幾個關(guān)鍵數(shù)據(jù)結(jié)構(gòu)有:static struct usb_driver spca5xx_driver = / USB驅(qū)動結(jié)構(gòu),即插即用功能的實現(xiàn)spca5xx, spca5xx_probe, / 注冊設(shè)備自我偵測功能 spca5xx_disconnect, / 注冊設(shè)備自我斷開功能 NULL,NULL;嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(4)SPCA5

14、xx通用驅(qū)動核心程序分析 2)上層軟件接口模塊 包括以下部分: Open功能模塊 Read功能模塊 Mmap功能模塊 Ioctl功能模塊嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程(4)SPCA5xx通用驅(qū)動核心程序分析 3)數(shù)據(jù)傳輸模塊。 程序采用tasklet來實現(xiàn)同步快速傳遞數(shù)據(jù),并通過spcadecode.c上的軟件解碼函數(shù)實現(xiàn)JPEG圖像的解碼。此模塊的入口節(jié)點掛在spca_open函數(shù)中,其具體的函數(shù)為spca50 x_init_isoc。當設(shè)備被打開時,同步傳輸數(shù)據(jù)也已經(jīng)開始,并通過spca50 x_move_data函數(shù)將數(shù)據(jù)傳遞給驅(qū)動程序,驅(qū)動程序通過輪詢的辦法實現(xiàn)對數(shù)據(jù)的訪問。嵌

15、入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 Linux的設(shè)備驅(qū)動程序有兩種加載模式,一種是內(nèi)核直接加載,也就是說Linux啟動后就驅(qū)動程序直接進入內(nèi)核,在映射內(nèi)存中占用一定的空間;另一種就是模塊加載,即Linux啟動以后,通過insmod命令加載驅(qū)動到內(nèi)核,并且可以rmmod命令從內(nèi)核中卸載該驅(qū)動。 在本設(shè)計中,攝像頭的驅(qū)動加載將以模塊的方式進行加載入內(nèi)核。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 本設(shè)計的驅(qū)動源碼是Linux內(nèi)核源代碼之外的,那么就需要其他的一些工作來實現(xiàn)SPCA5XX驅(qū)動的內(nèi)核定制?;静襟E如下:(1)將SPCA5XX的驅(qū)動選項加入到MENUCONFIG 的MENU之中,以供選擇并

16、在編譯中編譯進入內(nèi)核;(2)然后在根目錄下,修改MAKEFILE;(3)接著配置內(nèi)核編譯參數(shù)并編譯內(nèi)核;(4)選擇對對視頻設(shè)備支持;嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程基本步驟如下:(5)配置USB設(shè)備,選擇支持USB DEVICE 并選擇靜態(tài)編譯入內(nèi)核;(6)選中S3C2440的OHCI支持;(7)在VIDEO DEVICE 中選擇對SPCA5XX的模塊化編譯,開機后手動加載,也可通過配置文件“/usr/etc/rc.local”自動加載。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程測試的具體步驟如下:(1)掛載驅(qū)動模塊并掛載攝像頭設(shè)備;(2)建立設(shè)備掛載點,使用“ mknod ”命令;(3)測

17、試驅(qū)動加載的正確性,使用“cat”查看。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程網(wǎng)絡(luò)視頻服務(wù)器程序流程框圖嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 Video4linux(簡稱V4L),是Linux中關(guān)于視頻設(shè)備的內(nèi)核驅(qū)動,也就是一個視頻設(shè)備與應(yīng)用程序的一個接口函數(shù)集合。 Video4linux下視頻編程的具體流程為:打開視頻設(shè)備;讀取設(shè)備信息;更改設(shè)備當前設(shè)置;進行視頻采集;嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 Video4linux下視頻編程的具體流程為:內(nèi)存映射;直接從設(shè)備讀??;對采集的視頻進行處理;關(guān)閉視頻設(shè)備。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程1.準備工作2.測試方法3.測試結(jié)果嵌

18、入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 將在宿主機NFS目錄中所有調(diào)試成功的程序與原有文件系統(tǒng)中的程序文件一同打包成鏡像文件,通過BootLoader自帶的燒寫工具燒寫到開發(fā)板上,將系統(tǒng)硬件全部按照設(shè)計連接好,準備進行系統(tǒng)的功能測試。嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 依據(jù)系統(tǒng)設(shè)計需要達到的目標,對系統(tǒng)的測試主要分為以下幾個方面: 通過串口作為console口觀察系統(tǒng)從啟動,運行,關(guān)閉過程中程序有無錯誤、異常情況發(fā)生; 通過串口作為console口查看USB攝像頭數(shù)據(jù)輸入驅(qū)動加載,攝像頭設(shè)備的掛載,以及服務(wù)器的啟動,客戶端連接等是否與系統(tǒng)設(shè)計標準相符合; 測試嵌入式視頻監(jiān)控服務(wù)器是否工作正常,是否可以正確響應(yīng)監(jiān)控終端的傳輸請求;嵌入式嵌入式Linux基礎(chǔ)基礎(chǔ)教程教程 依據(jù)系統(tǒng)設(shè)計需要達到的目標,對系統(tǒng)的測試主要分為以下幾個方面: 測試監(jiān)控終端視頻監(jiān)控軟件是否工作正常,圖片抓取、存儲功能是否正常; 測試使用

溫馨提示

  • 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

提交評論