?
采用現有的3G移動通信網絡來實現無線視頻傳輸的方法適合遠距離使用,在近距離時使用這種傳輸方式不僅費用高,而且帶寬得不到保證。針對以上問題設計了一種近距離無線視頻傳輸系統。系統采用專用的JPEG2000視頻壓縮器件ADV212來實現視頻壓縮;基于多外部接口和低功耗的考慮,選用Cortex-M3內核的嵌入式處理器LPC1768對整個系統進行控制;無線傳輸采用nRF24LU1+來實現。
1 無線視頻傳輸系統的組成
無線視頻傳輸系統主要由視頻圖像采集模塊、JPEG2000實時壓縮模塊、控制模塊和通信模塊等組成。無線視頻傳輸結構框圖如圖1所示。
?
主要模塊介紹如下:
①視頻圖像采集模塊,由CMOS圖像傳感器OV7670構成,完成圖像的采集和濾波處理;
②JPEG2000實時壓縮模塊,主要由JPEG2000編解碼芯片ADV212完成視頻的實時壓縮;
③控制模塊(LPC1768),處理紅外觸發信號及視頻的存儲和發送;
④通信模塊,包括無線傳輸模塊和網絡適配器(可擴展);
⑤存儲器,SD存儲卡。
2 系統模塊設計
系統主要包括視頻圖像采集模塊、JPEG2000實時壓縮模塊、控制模塊和無線傳輸模塊。
2.1 視頻圖像采集模塊
視頻圖像采集由OmniVision公司的OV7670圖像傳感器完成,JPEG2000實時壓縮模塊采用ADI公司的ADV212實時壓縮芯片來實現。
2.1.1 OV7670
OV7670是30萬像素CMOS VGA圖像傳感器。它具有體積小、工作電壓低等特點,可提供單片VGA攝像頭和影像處理器的所有功能;通過SC CB總線控制,可以輸出整幀、子采樣、取窗口等方式的各種分辨率8位影像數據;最高幀率可達30 fps,用戶可以完全控制圖像質量、數據格式和傳輸方式;所有圖像處理功能如伽瑪曲線、白平衡、飽和度、色度等,都可以通過I2C總線以SCCB方式進行配置;感光陣列為640x480,可以輸出YCbCr(4:2:2)的格式數據。
2.1.2 ADV212
ADV212是ADI公司推出的一款用于實現靜態圖像壓縮最新算法標準JPEG2000的專用圖像壓縮編解碼芯片。它采用SRAM工藝構造,延遲小、功耗低、成本低。工作模式可通過設置內部寄存器來靈活控制,適用于多種視頻和靜止圖像格式數據的壓縮處理。它主要由像素接口、小波變換引擎、熵編解碼器、嵌入式處理器、存儲器系統、內部DMA引擎和外部DMA引擎等組成。單片ADV212單次壓縮最大能處理的數據量為1 MB,設計中采用YCbCr(4:2:2)格式,單幀數據量為600 KB,完全可以滿足要求。視頻圖像采集與控制結構框圖如圖2所示。
?
OV7670的初始化配置由控制器LPC1768通過I2C總線以SCCB方式進行配置,可以進行讀寫的寄存器地址范圍是00~C9H,其中很多不用進行改寫,只需默認值;使能信號為ENABLE=1,非使能信號為DISABLE=0;從地址0x42是寫,0x43是讀。常用的寄存器COM7(12H)是輸出格式寄存器,COM10(15H)是行場設置寄存器以及其他COM類通用控制寄存器。
LPC1678通過設置引腳PWDN為高電平使其進入睡眠狀態。如果有觸發信號,則進行視頻圖像采集;視頻采集由OV7670和ADV212來完成。其中引腳PCLK為像素時鐘信號,HREF為行同步信號,VSYNC為幀同步信號,數據格式采用YCbCr(4:2:2)(8位)。這正好符合ADV212芯片要求的格式,通過OV7670的D[7:0]引腳與ADV212的VDATA[11:4]引腳來完成數據傳輸。
2.2 無線傳輸模塊
2.2.1 nRF24LU1+無線收發芯片
nRF24LU1+是Nordic公司推出的一款將高性能射頻收發器和單片USBdongle功能結合起來的無線收發芯片。它可實現無線數據到USB數據形式的轉換,這樣就實現了芯片與PC機的連接。nRF24LU1+內含1個增強型的8051內核、無線收發模塊以及符合全速USB 2.0標準的器件控制器。VBUS(USB工作電源)工作電壓范圍為4.0~5.25 V。nRF24LU1+是單片結構,外形尺寸為5 mm×5 mm。它的最高速率可達2 Mbps,兼容所有nRF24系列芯片;使用Enhanced Shocked Bust技術可以實現數據包的自動打包、解包和傳輸處理(應答/重傳)功能。nRF24LU1+外圍電路如圖3所示。
?
功率放大器PA和低噪接收放大器LNA#e# 2.2.2 功率放大器PA和低噪接收放大器LNA
單獨采用nRF24LU1+芯片只能實現近距離的無線通信,范圍最多幾十米。為了增加無線視頻傳輸的距離,大約幾百米的無線通信就需要加入功率放大器PA。從數據通信距離考慮,還需要增加芯片輸入端的接收靈敏度,選用合適的低噪接收放大器LNA和濾波器就成為必然。設計中選擇Maxim公司生產的MAX2240和MAX2644。功放和低噪接收電路如圖4所示。
?
MAX2240芯片是專為2.4~2.5 GHz頻段的應用設計而開發的,它符合Bluetooth、HomeRF、IEEE802.11b標準以及其他FSK調制系統的要求。MAX2644是一款專門為WLAN、Bluetooth等工作在2.4 GHz頻段內的設備而設計的高三階交調點的低噪聲放大器。放大電路中,微波開關采用的是Hittite公司生產的低成本SPDT微波開關,型號為HMC545。該開關特別為3G和ISM頻段工作的設備設計,其插入損耗非常小只有0.25 dB。HMC545采用SOT封裝,體積小,可采用CMOS或TTL電平控制。利用nRF24LU1+芯片的VDD_PA引腳可控制無線發送和接收功能的切換。
2.3 核心控制器LPC1768
2.3.1 LPC1768功能介紹
系統的主控制器采用LPC1768,它采用Cortex-M3內核,可提供系統增強型特性,用于滿足要求高度集成和低功耗的嵌入式應用。Cortex -M3控制器的操作頻率可達100 MHz,具有三級流水線和哈佛結構;帶有獨立本地指令、數據總線以及用于外設的性能稍低的第3條總線,還包含一個支持隨機跳轉的內部預取值單元。LPC1768系列Cortex-M3微控制器的外設組件包括512 KB的Flash存儲器、64 KB數據存儲器、以太網MAC、USB主機/從機/OTG接口、8通道的通用DMA控制器、4個UART接口、2條CAN通道、2個SSP控制器、SPI接口、3個I2C接口、2輸入和2輸出的I2S接口、8通道的12位ADC、10位DAC、電機控制PWM、正交編碼器接口、4個通用定時器、6輸出的通用PWM、帶獨立電池供電的超低功耗RTC和多達70個通用I/O引腳。nRF24LU1+具有SPI口,可以方便實現與LPC1768的連接。
2.3.2 LPC1768與ADV212的連接
①控制總線:ADV212支持16位和32位的總線控制。LPC1768是32位ARM控制器,所以采用32位控制總線實現對ADV212的配置和控制;通過LPC1768的高速GPIO口控制引腳P1[31:0]。其中ADDR[3:0]引腳為地址總線,對ADV212的直接型寄存器進行讀寫;ADV212接收到OV7670的幀數據后對其進行JPEG2000壓縮,壓縮后的數據存放在ADV212內部的CODE FIFO中。LPC1768與ADV212之間的連接采用32位正常主機模式的異步SRAM接口通信,其16個直接寄存器映射到控制器的寄存器進行固件加載和參數配置,并從CODEFIFO中讀取壓縮視頻數據。
②數據總線:當ADV212工作在JDATA模式下時,由HDATA[31:28]~JDATA[7:4]和HDATA[27:24]~JDATA[3:0]總線輸出壓縮后的JPEG20 00數據。
③其他:包括中斷信號、讀寫信號、復位信號、睡眠信號都與LPC1768的GPIO口相連。
2.3.3 LPC1768與SD卡的連接
SD卡具有耐用、可靠、安全、容量大、體積小、便于攜帶和兼容性好的優點。SD卡支持SD和SPI兩種模式通信方式。采用SPI模式時,占用較少的I/O資源。設計中采用直接與LPC1768的SPI接口的通信方式。通過4條信號線即可完成數據的傳輸,分別包括時鐘SCLK、主機輸入從機輸出MISO、主機輸出從機輸入MOIS和片詵CS。實際討程中,還需要考慮到中斷控制、電源供電控制、寫保護和卡插入位置檢測4個方面,因此還需要額外的4根通用I/O引腳來滿足該需要。LPC1768外圍電路結構框圖如圖5所示。
?
3 系統程序設計
系統硬件設計完成之后,要進行軟件的設計。整個設計過程中的功能器件很多,但是都進行了模塊化設計,所以軟件方面也要進行模塊化設計。主要分為主程序、初始化配置模塊、圖像采集壓縮控制模塊、存儲模塊和無線傳輸模塊。系統工作程序流程如圖6所示。
?
ADV212對每個視頻幀獨立進行JPEG2000幀內壓縮,這樣就能方便地進行基于幀的操作,如幀的抽取。ADV212對每幀圖像壓縮后,壓縮數據頭部都有一個特有的header標志段,其中包含有圖像編號索引,因此LPC1768通過header可以方便地抽取該幀。程序中最為關鍵的是ADV212的初始化,也是最為復雜的,它可以配置為執行壓縮或解壓處理,這取決于芯片復位后初始化階段所加載的固件(壓縮固件或解壓固件)。設計中是視頻壓縮,進行壓縮編碼配置,包括壓縮算法的固件加載和編碼參數的設置。ADV212初始化流程如圖7所示。
?
4 視頻壓縮結果與分析
原始圖像與JPEG2000壓縮后的圖像對比如圖8所示。
?
通過圖8可以看出,基于ADV212的JPEG2000視頻壓縮系統可以在大壓縮比下保持較好的視頻質量。在壓縮比為50時,圖像質量沒有明顯下降;壓縮比為100時略有下降;在壓縮比為200時,圖像質量有明顯下降。壓縮比為100時,800×480的一張圖像壓縮后為9.06 KB,視頻傳輸流暢的最小幀數一般為24 fps,傳輸速率最小為1.728 Mb/s,低于2 Mb/s,說明nRF24LU1+能夠滿足其需要。如果圖像質量急劇下降,可以采用自適應幀率的方法來適時降低幀率,以提高圖像質量;也可以通過隔行掃描的方法來降低每幀的數據量,最后在顯示終端通過奇偶幀合成重復播放的機制來降低無線傳輸速率。
5 總結
實驗表明,實時JPEG2000壓縮器可以用于無線視頻傳輸的實時壓縮,nRF24LU1+能夠實現壓縮后視頻數據的無線傳輸。以專用的JPEG20 00壓縮編碼處理芯片ADV212為基礎構建圖像壓縮處理是加快推廣JPEG2000圖像壓縮標準硬件化的有效途徑。
評論
查看更多