數(shù)字無線實(shí)時視頻通信和拍攝系統(tǒng)
引 言
本文引用地址:http://m.butianyuan.cn/article/157130.htm本無線系統(tǒng)基于高速率射頻芯片的視頻通信系統(tǒng),且具備即時拍攝功能;在視頻(連續(xù))模式下采用QQVGA的分辨率傳輸視頻數(shù)據(jù),為160×120(@13fps),基本上能達(dá)到實(shí)時視頻的日的。在實(shí)際應(yīng)用中,用戶可以在接收端的LCD中觀看(遠(yuǎn)處的)發(fā)送端附近的景物。當(dāng)見到感興趣的景物時,按下按鈕稍等片刻,即可得到1.3M像素的圖像,方便實(shí)用。為簡化設(shè)計,該系統(tǒng)只用了8位色深和RGB的數(shù)據(jù)格式,且未采用CCD攝像芯片,也未使用FPGA芯片進(jìn)行邏輯控制,節(jié)省了成本。
下面著重講述以TMS320VC5402 DSP為控制核心的無線視頻通信系統(tǒng),詳細(xì)描述DSP與攝像芯片以及DSP與射頻芯片這兩大部分的接口設(shè)計,分析設(shè)計中的要點(diǎn),最后給出部分DSP匯編代碼。
1.1 OV9640攝像芯片簡介
OV9640是美國OmniVision公司推出的高性能CM0S圖像傳感器芯片.支持130萬像素的圖像拍照和多種分辨率,包括l280×960、VGA、QQVGA、CIF、QCIF等及多種數(shù)據(jù)輸出格式,如Raw RGB、YUV(4:2:2)、YcbCr(4:2:2)等;支持8位或16位數(shù)據(jù)輸出;通過SC-CB接口對其編程,可實(shí)現(xiàn)圖像處理的各種基本功能,譬如曝光控制、白平衡、色彩飽和、伽馬控制等;芯片電壓要求低,可應(yīng)用于嵌入式移動設(shè)備。
1.2 nRF24L01射頻芯片簡介
nRF24L01是挪威Nordic公司的單片無線GFSK收發(fā)芯片,工作于2.4~2.5 GHz的ISM頻段,無線傳輸率最大為2Mbps,與MCU采用SPI接口進(jìn)行控制和數(shù)據(jù)傳輸。相比其上一代產(chǎn)品nRF2401,nRF24LOl的性能更為優(yōu)越,功耗更低。它最多能支持6路數(shù)據(jù)通道,且每條通道均支持Enhanced ShockBurst(ESB)技術(shù),具備自動應(yīng)糟(AACK)和自動重發(fā)(ART)功能,減輕了MCU的負(fù)擔(dān),降低了無線數(shù)據(jù)的丟包率,提高了雙向傳輸?shù)男?。在開啟ESB的情況下,nRF24L0l發(fā)送完數(shù)據(jù)包后將自動切換到接收模式以等待對方的應(yīng)答.并會根據(jù)寄存器的設(shè)定來實(shí)施自動重發(fā)。
1.3 系統(tǒng)硬件電路
硬件電路由發(fā)送(獲取)端和接收(存儲顯示)端兩大部分組成,通過高速RF芯片實(shí)現(xiàn)在2.4 GHz頻段的無線鏈接。發(fā)送端以TMS320VC5402 DSP作為控制核心,OV9610攝像頭芯片作為視頻(或圖像)獲取前端,AT29LV1024 Flash ROM作為DSP自舉程序存儲芯片,K4S161622H IMB容量的SDRAM作為程序運(yùn)行空間以及視頻數(shù)據(jù)緩沖,視頻數(shù)據(jù)最終通過射頻芯片nRF24LOl發(fā)射出去;接收端的硬件結(jié)構(gòu)基本上與發(fā)送端一致,將前端的OV9640改換成后端的LCD顯示即可。整個系統(tǒng)的總體結(jié)構(gòu)框圖如圖1所示。
1.4 系統(tǒng)工作原理和流程
1.4.1 發(fā)送端工作于視頻流模式
發(fā)送端由DSP作為核心控制芯片。DSP上電初始化,通過BootLoader把Flash ROM中的代碼加載到SDRAM中,實(shí)現(xiàn)系統(tǒng)的高速運(yùn)行以加快數(shù)據(jù)的處理速度,并將HPI接口設(shè)定為通用I/O。然后,通過McBSPO緩沖串口將nRF24L0l設(shè)定為發(fā)送模式,把含有預(yù)定地址的數(shù)據(jù)包發(fā)送出占以檢測接收端,nRF24L01會自動切換到等待應(yīng)答信號的模式。若存在正確的接收端(地址相符),則nRF24L01通過INTO中斷通知DSP,使DSP重新將nRF24L01設(shè)定為發(fā)送模式,并立即對OV9640初始化,通過McBSPl緩沖串口來實(shí)現(xiàn)SCCB總線,啟動攝像頭并設(shè)定為連續(xù)幀模式。此時的分辨率為標(biāo)準(zhǔn)QQVGA,即160×120(@8bit),最后,DSP把從D[7:O]獲得的8位并行數(shù)據(jù)轉(zhuǎn)化為串行格式,通過SDRAM緩沖和McBSP0送給nRF24L01,將視頻數(shù)據(jù)發(fā)射出去。若沒有檢測到正確的接收端(沒有INTO中斷發(fā)生),則DSP會一直等待INTO發(fā)生或直到用戶關(guān)閉電源。
1.4.2 發(fā)送端工作于拍攝模式
在視頻流傳輸過程中,nRF24LOl可以同時監(jiān)聽空中信號并自動應(yīng)答。若收到來自接收端的拍照通知(按下按鈕),則把OV9640設(shè)定為標(biāo)準(zhǔn)拍攝模式,分辨率為l280×960(@8bit)。然后,DSP將nRF24L01設(shè)定為發(fā)送模式,并將此時的幀數(shù)據(jù)發(fā)送出去。圖像數(shù)據(jù)發(fā)送完成并等到接收確認(rèn)信號后,系統(tǒng)將重新回到視頻流模式。若接收不成功,則nRF24LOl的自動重發(fā)功能將確保數(shù)據(jù)傳輸?shù)耐暾浴?/p>
1.4.3 接收端的工作流程
接收端上電初始化的情況基本與發(fā)送端一致,但要將nRF2dL01(按預(yù)定地址)設(shè)定為接收模式以接收檢測信號。檢測到相符的地址后,nRF24L0l的自動應(yīng)答功能會發(fā)送應(yīng)答信號給發(fā)送端以確認(rèn)收到信號,此時雙方“握手”成功。接著,通過INTO中斷通知DSP,使得DSP重新將nRF24LOl設(shè)定為接收模式以接收來自發(fā)送端的連續(xù)視頻流,并且打開LCD模塊準(zhǔn)備顯示視頻。最后DSP通過SDRAM緩沖視頻流,送給LCD顯示(若LCD等其他后端模塊為并行接口,則需要將數(shù)據(jù)轉(zhuǎn)化成并行數(shù)據(jù)格式)。至此,系統(tǒng)已經(jīng)能實(shí)現(xiàn)實(shí)時視頻數(shù)據(jù)的無線傳輸,實(shí)時視頻流的分辨率為QQVGAl60×120(@13fps)。
在視頻流的顯示過程中,若用戶按下拍照按鈕,則產(chǎn)生INTl中斷通知DSP,DSP會將nRF24LOl設(shè)定為發(fā)送模式并發(fā)送拍照通知信號。收到應(yīng)答信號后,nRP24L0l返回接收模式準(zhǔn)備接收圖像數(shù)據(jù),接收完成后會自動發(fā)送確認(rèn)信號以表示圖像數(shù)據(jù)接收成功。最后,DSP將圖像數(shù)據(jù)交由后端模塊處理。至此.系統(tǒng)實(shí)現(xiàn)了圖像的無線拍攝功能,拍照效果為1280×960(@130萬像素),基本上能滿足拍照要求。
視頻系統(tǒng)接收端和發(fā)送端的工作流程如圖2所示。
評論