嵌入式無線實(shí)時(shí)圖像傳輸系統(tǒng)設(shè)計(jì)方案
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要: 提出了一種基于S3C2440A 的無線實(shí)時(shí)圖像傳輸?shù)脑O(shè)計(jì)方案,該方案利用S3C2440A 進(jìn)行核心控制,通過USB2.0 控制器CY7C68013A 實(shí)現(xiàn)USB2.0 接口,通過nRF2401 實(shí)現(xiàn)無線數(shù)據(jù)收發(fā)。闡述該系統(tǒng)的工作原理、硬件構(gòu)成及軟件設(shè)計(jì)方案。
1 引言
隨著信息化,智能化,網(wǎng)絡(luò)化的發(fā)展,嵌入式系統(tǒng)技術(shù)也將獲得廣闊的發(fā)展空間。進(jìn)入20 世紀(jì)90 年代,嵌入式技術(shù)全面展開,目前已成為通信和消費(fèi)類產(chǎn)品的共同發(fā)展方向。在通信領(lǐng)域,數(shù)字技術(shù)正在全面取代模擬技術(shù)。毫無疑問,模擬圖像采集系統(tǒng)必將被數(shù)字圖像采集系統(tǒng)所代替,其中的嵌入式圖像采集系統(tǒng)由于其優(yōu)越的性能越來越受到人們的關(guān)注。同時(shí),在技術(shù)進(jìn)步推動(dòng)信息傳遞日趨無線化的背景下,無線圖像傳輸也就成為了圖像傳輸?shù)那把仡I(lǐng)域。對(duì)于邊遠(yuǎn)的和可移動(dòng)的系統(tǒng),無線網(wǎng)絡(luò)接入傳輸數(shù)據(jù)方式顯得十分重要。本文介紹了采用nRF2401 作為傳輸手段的無線圖像傳輸系統(tǒng)。該系統(tǒng)由無線照相機(jī)和圖片接收器兩部分組成,具有視頻圖像采集、壓縮、傳輸和存儲(chǔ)等功能。
2 系統(tǒng)總體設(shè)計(jì)方案
整個(gè)圖像傳輸系統(tǒng)包括無線照相機(jī)和圖片接收器兩大部分。無線照相機(jī)主要由CMOS 攝像頭、JPEG壓縮編碼和無線發(fā)射部分組成,圖像采集部分用嵌入式處理器控制CMOS 攝像頭采集圖像數(shù)據(jù)并進(jìn)行JPEG 壓縮,再利用nRF2401 來傳送處理過的圖像信息。圖片接收器接受完圖片信息后,通過軟件將圖片文件存儲(chǔ)在硬盤中,并將其顯示在LCD 上。整個(gè)無線實(shí)時(shí)圖像傳輸系統(tǒng)的結(jié)構(gòu)如圖1 所示。
圖1 無線實(shí)時(shí)圖像傳輸系統(tǒng)結(jié)構(gòu)圖
3 無線照相機(jī)的設(shè)計(jì)
本文所設(shè)計(jì)的無線照相機(jī)采用了基于linux 2.6內(nèi)核的嵌入式系統(tǒng)[1],它出色地完成了圖像的采集、壓縮及無線傳輸?shù)裙δ堋?/font>
3.1 硬件設(shè)計(jì)
嵌入式無線照相機(jī)由CMOS 攝像頭,USB2.0 控制器CY7C68013A、nRF2401發(fā)射部分、S3C2440A嵌入式系統(tǒng)組成,如圖2 所示。
圖2 嵌入式無線照相機(jī)系統(tǒng)硬件結(jié)構(gòu)。
3.1.1 CMOS 攝像頭
系統(tǒng)采用的CMOS 攝像頭是網(wǎng)眼公司生產(chǎn)的網(wǎng)眼2000B,它采用的是OV511+7260 的攝像頭方案,由于linux 2.6 源碼中這兩款芯片的驅(qū)動(dòng),給我們的設(shè)計(jì)帶來了很大的方便。該攝像頭的視像解像度為640(水平) x 480(垂直)像素,清晰度可以滿足大部分的應(yīng)用,它還具有良好的電源管理功能、完善的自動(dòng)亮度、白平衡控制,并提供色彩飽和度、對(duì)比度、邊緣增強(qiáng)、伽馬表等高級(jí)數(shù)碼影像控制功能。
3.1.2 無線收發(fā)芯片nRF2401
nRF2401 芯片和藍(lán)牙芯片一樣,都工作在2.4GHz 自由頻段,有125 個(gè)頻道,可滿足多頻及跳頻需要。跳頻通信具有抗干擾能力強(qiáng),安全保密性好等特點(diǎn)。跳頻信號(hào)譜密度低,淹沒在噪聲之中,加之跳頻碼的保密性,因而不易被竊聽、破譯。nRF2401支持多點(diǎn)間通信,最高傳輸速率超過1Mbit/s,而且比藍(lán)牙具有更高的傳輸速度。它采用SoC 方法設(shè)計(jì),只需少量外圍元件便可組成射頻收發(fā)電路。與藍(lán)牙不同的是,nRF2401 沒有復(fù)雜的通信協(xié)議,它完全對(duì)用戶透明,同種產(chǎn)品之間可以自由通信。更重要的是,nRF2401 比藍(lán)牙產(chǎn)品更便宜。所以nRF2401 是業(yè)界體積較小、功耗較少、外圍元件最少的低成本射頻系統(tǒng)級(jí)芯片。
3.1.3 USB2.0 控制器CY7C68013A
CYPRESS 公司推出的USB2.0 控制器CY7C68013A 是USB2.0 的完整解決方案。它既負(fù)責(zé)USB 事務(wù)處理也兼具微處理器的控制功能,也可作為USB 外部芯片的主控芯片。該芯片包括帶8KB 片上RAM 的高速8051 單片機(jī)、4KB FIFO 存儲(chǔ)器以及通用可編程接口(GPIF)、串行接口引擎(SIE)和USB2.0收發(fā)器,6 條可編程控制輸出線,9 條地址輸出線和6條通用目的地準(zhǔn)備輸入線;數(shù)據(jù)線寬度可為8 位或16位,其小巧的體積及較高的性價(jià)比使得該芯片在海量存儲(chǔ)器、打印機(jī)、掃描儀和PCMCIA 等各種USB 設(shè)備上得到了廣泛的應(yīng)用。
3.1.4 嵌入式處理器S3C2440A
由于本系統(tǒng)采用的圖像壓縮是軟件壓縮,所以在選擇嵌入式處理器的時(shí)候,需要衡量處理器的性能是否能勝任JPEG 壓縮程序以及USB 數(shù)據(jù)的傳送。在本系統(tǒng)中,嵌入式處理器采用韓國三星公司的基于ARM920T 內(nèi)核的16/32 位RISC 嵌入式微處理器S3C2440A,主頻高達(dá)400MHz,適合于圖像、視頻處理,主要面向高性價(jià)比、低功耗的應(yīng)用。S3C2440內(nèi)置有豐富的外設(shè)資源,其中包括:存儲(chǔ)器、LCD、Camera、串口、IIC、IIS 和USB 等接口控制電路。
3.2 軟件設(shè)計(jì)
我們選用嵌入式linux 操作系統(tǒng),版本號(hào)為:2.6.12.
它是本地圖像采集程序、壓縮程序、USB2.0 控制器CY7C68013A 驅(qū)動(dòng)程序及其應(yīng)用程序的運(yùn)行平臺(tái)。
圖3 主程序流程圖
3.2.1 系統(tǒng)初始化
系統(tǒng)初始化包括對(duì)芯片OV511、OV7260,USB2.0 控制器CY7C68013A , 無線收發(fā)芯片nRF2401 的初始化以及l(fā)inux 系統(tǒng)的初始化。linux系統(tǒng)的初始化主要完成對(duì)CPU、SDRAM 等芯片的初始化,加載攝像頭和USB2.0 控制器的驅(qū)動(dòng)程序[5],為應(yīng)用程序的執(zhí)行做好準(zhǔn)備。其它芯片的初始化主要對(duì)一些數(shù)據(jù)寄存器、地址寄存器、中斷服務(wù)寄存器進(jìn)行相應(yīng)的操作。
3.2.2 實(shí)時(shí)圖像傳輸流程
系統(tǒng)初始化完成之后,我們編寫的應(yīng)用程序控制攝像頭驅(qū)動(dòng)程序拍攝一幅圖像信號(hào),并保存在flash盤中,程序流程如圖4 所示,此時(shí)的圖片文件是未壓縮的PPM 格式,接著JPEG 壓縮程序?qū)PM 格式的圖片壓縮成圖片,如圖5 所示,一幅分辨率為320*240的圖片文件大小平均只有8KB,完全可以滿足無線傳輸?shù)男枰?,壓縮完成之后,讀取JPG 格式的圖片文件,并將圖像數(shù)據(jù)發(fā)送給USB2.0 控制器CY7C68013A的驅(qū)動(dòng)程序,然后驅(qū)動(dòng)程序再將數(shù)據(jù)寫入U(xiǎn)SB2.0 控制器的端點(diǎn)緩沖器, 最后, USB2.0 控制器CY7C68013A 控制nRF2401 將端點(diǎn)緩沖器中的圖像數(shù)據(jù)無線發(fā)送出去,程序流程如圖6 所示。[!--empirenews.page--]
圖4 圖像采集程序流程圖。
圖5 JPEG 壓縮編碼程序流程圖
圖6 nRF2401 無線發(fā)送程序流程圖
整個(gè)系統(tǒng)中,由linux 操作系統(tǒng)完成對(duì)各個(gè)芯片的初始化、協(xié)調(diào)CPU 與其他芯片之間的工作,完成圖像數(shù)據(jù)的讀取、壓縮及發(fā)送(如圖3)。
4 圖片接收器的設(shè)計(jì)
我們?cè)O(shè)計(jì)的圖片接收器是基于PC 機(jī)的一種類似無線網(wǎng)卡的無線接收設(shè)備,完成圖片信息的接收和顯示,硬件結(jié)構(gòu)和nRF2401 無線發(fā)射模塊一樣,都是用USB2.0 控制器CY7C68013A 控制nRF2401 進(jìn)行無線傳輸,如圖7 所示。
圖7 圖片接收器結(jié)構(gòu)
USB2.0 控制器CY7C68013A 控制nRF2401 無線接收?qǐng)D像數(shù)據(jù),程序流程如圖8 所示,然后PC 機(jī)上的應(yīng)用程序調(diào)用USB2.0控制器驅(qū)動(dòng)中的讀取函數(shù)接收?qǐng)D片數(shù)據(jù)并保存,最后將圖片顯示出來。如圖9,10.
圖8 nRF2401 無線接收程序流程圖。
圖9 像素:320×240.
圖10 像素:640×480 無線照相機(jī)。
5 結(jié)論
本系統(tǒng)的無線照相機(jī)采用32 位的高性能ARM 處理器S3C2440A 搭載2.6 內(nèi)核的linux 嵌入式操作系統(tǒng)進(jìn)行核心控制,出色地完成了圖片的拍攝,壓縮和無線傳送。接收端將圖片信息接收并保存在PC 機(jī)硬盤中,有必要的話也可以傳到服務(wù)器上,進(jìn)行遠(yuǎn)程監(jiān)控。可應(yīng)用于汽車防盜監(jiān)控、無繩可視電話以及礦井作業(yè)監(jiān)控等。因此,研制成功的無線實(shí)時(shí)圖像傳輸系統(tǒng)具有廣泛的應(yīng)用前景和市場(chǎng)。