《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 嵌入式機載視頻輸出接口設計
嵌入式機載視頻輸出接口設計
現代電子技術
摘要: 嵌入式機載視頻輸出接口設計,摘要:針對視頻接口接收視頻格式單一的問題,設計了一種多格式視頻輸入接口的視頻編碼模塊。由于采用CH7024視頻編碼芯片,所以在接口即可接收RGB565和RGB666格式的視頻信號。在Linux環境下,對芯片寄存器和視頻格式進
Abstract:
Key words :

摘要:針對視頻接口接收視頻格式單一的問題,設計了一種多格式視頻輸入接口的視頻編碼模塊。由于采用CH7024視頻編碼芯片,所以在接口即可接收RGB565和RGB666格式的視頻信號。在Linux環境下,對芯片寄存器和視頻格式進行配置,編譯芯片驅動程序,通過超級終端下栽到芯片中,通過CH7024編碼芯片將不同格式的輸入信號統一轉換成CVBS視頻的信號輸出,這樣可減少電路的硬件設計,并通過對軟件的修改來接收不同視頻格式的信號。實驗結果表明,設計的模塊能夠適應多種視頻格式的信號,且編碼后的CVBS視頻信號輸出距離遠,抗干擾性強。
關鍵詞:嵌入式Linux;視頻編碼;視頻輸出;驅動程序

0 引言
    在無人機視頻采集系統中,對于視頻信號的要求比較高,采集到的模擬視頻信號在ARM9處理器中經過A/D轉換,視頻壓縮編碼后通過無線傳輸到地面基站,通過視頻編碼芯片將數字信號轉換為模擬信號,輸出到顯示設備上。由于目前數字視頻具有多種格式,然而,普通的視頻編碼模塊的輸入接口比較單一,不能很好地兼容多格式的視頻輸入信號,故輸出的模擬信號抗干擾性和傳輸距離都不是太好。
    針對上述問題,本文提出了一種基于Freescale的MX27處理器,以Linux 2.6.19為內核操作系統的多格式視頻輸入編碼模塊設計方案。硬件方面,以CH7024為主芯片進行電路板設計;軟件方面,在Linux環境下,根據芯片的特點,編寫相應的驅動程序和寄存器配置。通過加載驅動程序,將不同格式的數字視頻信號轉換為CVBS復合視頻信號,相比其他的模擬視頻輸出信號,CVBS復合視頻信號將亮度、色度、同步和色彩脈沖信息整合到一根電纜內,具有傳輸距離遠,抗干擾能力強等優點。

1 設計方案
1. 1 系統硬件結構
    硬件連接如圖1所示,將MX27中LCD控制器輸出的標準數字視頻信號(包括像素數據LD[17:0]、像素時鐘LSCLK,行同步信號LP/HSYNC、場同步信號pLM/VSYNC,數據使能信號ACD/OE)接入CH7024的數字輸入接口。此外,將MX27中I2C控制器的SPC,SPD線直接與CH7024相應的信號線連接。

1.JPG


1.2 視頻輸出接口設計
    由于以前的芯片輸入數據只有16位,接口兼容性不好,而選擇的CH7024有24位視頻數據信號線,可接收不同的數據格式,包括RGB和YC-rCb(如RGB565,RGB666,RGB888,像ITU656的YCrCb),可接收24b/18b/15b/12b/8b等多路復用數字輸入。為了能在系統運行出現故障時方便地進行復位,設計中添加了人工復位電路,這也是以前芯片所沒有的。應用CH7024芯片設計的編碼器,具有很好的兼容性和通用性,所以選擇用CH7024主芯片進行設計。
    CH7024視頻編碼芯片的輸入接口最多能接收到的視頻信號位數為24位,輸入格式為RGB888。這樣RGB每個通道用8 b來表示,但是對于RGB 666和RGB565等格式的視頻信號就涉及到每個通道用幾位來表示某個顏色的問題。對于RGB666來說,每個通道用6b來表示;對于RGB565來說,R和B每通道用5 b表示,G通道用6 b表示。對于RGB666和RGB565格式的視頻信號,在設計中芯片上的24位數據線分配情況如圖2所示。通過對相關寄存器的配置,實現對不同格式視頻信號的接收,使其具有較好的兼容性。該方案是以MX27處理器為平臺進行設計的,MX27輸出的視頻信號為18位數據,這樣MX27處理器發出的RGB666和RGB565格式的視頻,都能通過該方案設計的編碼器進行編碼。

2.JPG



2 視頻編碼器軟件設計
2.1 I2C總線
    I2C總線是一種兩線式串行總線,用于連接微控制器及其外圍設備。由于接口直接在組件之上,因此I2C總線占用的空間非常小,減少了電路板的空間和器件引腳的數量,降低了互聯成本。I2C總線可支持多主機控制,其中任何能夠進行發送和接收的設備都可以成為主控端。
    I2C總線的串行總線由數據線SDA和時鐘SCL構成,可用于發送和接收數據,并可在CPU與被控IC之間、IC與IC之間進行雙向傳送。在數據傳送過程中共有3種信號,分別是開始信號、結束信號和應答信號。其中,開始信號是在SCL為高電平時,SDA由高電平向低電平跳變,開始傳送數據;結束信號是在SCL為低電平時,SDA由低電平向高電平跳變,結束傳送數據;應答信號是接收數據的IC在接收到8 b數據后,向發送數據的IC發出特定的低電平脈沖,表示己收到數據。CPU向受控單元發出一個信號后,等待受控單元發出一個應答信號,CPU接收到應答信號后,根據實際情況判斷是否繼續傳輸信號。若未收到應答信號,則認為受控單元出現故障,如圖3所示。

5.JPG


2.2 視頻數據的傳輸
    在該設計中,視頻數據經過MX27處理器后轉換為RGB輸送到LCDC中,通過CH7024輸入接口接收數據,數據傳輸的方式如圖4所示。當場同步信號(VSYNC)產生低電平時,說明新的一幀數據需要采集,這時采集到的是有效視頻信號;當場同步信號再次產生低電平時,一幀數據采集完成,等待進入下一幀數據的采集。在場同步信號之間有n行數據,現以其中一行數據來分析,只要開始采集和采集完一行數據就會產生行同步信號(HSYNC),當行同步信號產生低電平時,說明要采集的一行為有效數據,在等待中斷采集;即當OE為下降沿時,開始采集一行數據;當OE變為上升沿時,一行數據采集完畢。圖中給出的LINE[1:n]是說一幀圖像有n行,每行有m個像素,也就說一幀圖像的大小為n×m。

4.JPG


2.3 寄存器配置
    在完成對CH7024的硬件電路設計后,需要在軟件上對相應的寄存器進行配置,在CH7024.C驅動程序中將相應寄存器地址后面的值進行配置,如視頻輸入格式、輸出格式、分辨率大小等。CH7024寄存器的初始化相關程序代碼如下:
5.JPG
2.4 驅動程序編譯加載
    由于應用環境是在Linux操作系統下,開發板中用的是Linux 2.6.19內核,在內核中并沒有CH7024相關的驅動模塊,這就需要把編寫好的驅動程序加載到內核中,生成需要的模塊形式,重新編譯內核,下載到開發板上。
    向內核中添加TVOUT CH7024驅動的流程如下:
    (1)選擇一個放置驅動代碼的位置:drivers/video/mxc/把代碼放到這個目錄中。
    (2)在drivers/video/mxc/添加Kconfig文件,內容如下:
    6.JPG
8.jpg
    (3)編寫makefile,內容為:
    9.jpg
    (4)修改上一級Makefile和Kconfig,即video目錄下的Makefile和Kconfig,在Makefile中添加:
    10.jpg
    (5)在arch/arm的Kconfig中添加:
11.jpg
    至此,修改完畢。此時可以使用make menuconfig。出現內核配置的窗口如圖5所示。

7.JPG


    選擇device drivers→graphics support可以看到,出現了TVOUT CH7024 driver support→選項,進入選擇“M”,即將驅動程序編譯成動態加載模塊,然后通過“make modules”命令生成了CH7024.ko文件。將CH7024編碼器的輸入端連接到PC機,輸出端連接到監視器上,上電后,將生成的模塊文件由超級終端下載到開發板上,在終端中用insmod CH7024.ko加載驅動。CH7024.ko驅動加載時,會通過I2C讀CH7024的寄存器信息,并打印它的ID號“Chip version ID(0x22)=0x22”,如果等式右邊的值與左邊括號里的值不等,則說明I2C有問題,或者沒有加載其驅動,TVOUT則不能正常工作。在I2C正確的情況下,加載相關視頻采集驅動程序,通過CCD攝像頭采集到的視頻就能在監視器上看到。

3 結果分析
    在實驗中該方案能夠通過攝像頭采集視頻數據,并能在監視器上實時看到采集的視頻圖像。由于輸入接口設計成了接收不同格式的視頻信號,使其能夠接收多種格式的視頻信號,編碼器不用更改硬件,只需要在軟件方面做相應的修改就能實現不同格式視頻的接收。

4 結語
    通過對視頻編碼芯片的軟硬件設計,使CH7024芯片能夠接收多種格式的視頻信號,由于CVBS信號傳輸距離遠,抗干擾性強,將不同格式的視頻信號轉換成CVBS復合視頻信號。隨著技術的發展,處理器芯片的輸出視頻數據為24位,該設計的編碼器也能應用,節省設計成本,縮短開發周期,具有一定的實用性。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 日本aaaaa级毛片 | 久久亚洲一级毛片 | 国产com| 国产视频久久久 | avove旗袍丝袜高跟啪啪 | 久久久久琪琪精品色 | 国产成人精品在线 | 国产精品无打码在线播放9久 | 综合 欧美 亚洲日本 | 免费高清在线爱做视频 | 欧美一及 | 久久精品国产亚洲高清 | 久久免费公开视频 | 欧美黑人巨大xxxxxxxx | 免费国产不卡午夜福在线 | 国产亚洲欧美日韩在线观看一区二区 | 欧美视频在线观看 | 2021一本久道| 久久久久久免费一区二区三区 | 亚洲高清在线视频 | 91精品久久久久含羞草 | 成人免费aaaaa毛片 | 亚洲国产成人最新精品资源 | 久久草在线看 | 国产91无套剧情在线播放 | 日韩视频免费一区二区三区 | 90岁老太婆一级毛片 | 精品国产三级 | 精品日本亚洲一区二区三区 | 黄色在线网站 | a级成人高清毛片 | 精品欧美一区二区在线看片 | 欧美极品video粗暴 | 久久精品视频6 | 亚洲成网站 | 可以免费观看欧美一级毛片 | 男女免费观看视频 | 国产欧美一区二区三区视频 | 亚洲高清一区二区三区久久 | 欧美日韩在线视频播放 | 99精品视频在线免费观看 |