www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]嵌入式機載視頻輸出接口設(shè)計

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

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

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


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

[!--empirenews.page--]

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


2.2 視頻數(shù)據(jù)的傳輸
    在該設(shè)計中,視頻數(shù)據(jù)經(jīng)過MX27處理器后轉(zhuǎn)換為RGB輸送到LCDC中,通過CH7024輸入接口接收數(shù)據(jù),數(shù)據(jù)傳輸?shù)姆绞饺鐖D4所示。當場同步信號(VSYNC)產(chǎn)生低電平時,說明新的一幀數(shù)據(jù)需要采集,這時采集到的是有效視頻信號;當場同步信號再次產(chǎn)生低電平時,一幀數(shù)據(jù)采集完成,等待進入下一幀數(shù)據(jù)的采集。在場同步信號之間有n行數(shù)據(jù),現(xiàn)以其中一行數(shù)據(jù)來分析,只要開始采集和采集完一行數(shù)據(jù)就會產(chǎn)生行同步信號(HSYNC),當行同步信號產(chǎn)生低電平時,說明要采集的一行為有效數(shù)據(jù),在等待中斷采集;即當OE為下降沿時,開始采集一行數(shù)據(jù);當OE變?yōu)樯仙貢r,一行數(shù)據(jù)采集完畢。圖中給出的LINE[1:n]是說一幀圖像有n行,每行有m個像素,也就說一幀圖像的大小為n×m。

[!--empirenews.page--]
2.3 寄存器配置
    在完成對CH7024的硬件電路設(shè)計后,需要在軟件上對相應(yīng)的寄存器進行配置,在CH7024.C驅(qū)動程序中將相應(yīng)寄存器地址后面的值進行配置,如視頻輸入格式、輸出格式、分辨率大小等。CH7024寄存器的初始化相關(guān)程序代碼如下:

2.4 驅(qū)動程序編譯加載
    由于應(yīng)用環(huán)境是在Linux操作系統(tǒng)下,開發(fā)板中用的是Linux 2.6.19內(nèi)核,在內(nèi)核中并沒有CH7024相關(guān)的驅(qū)動模塊,這就需要把編寫好的驅(qū)動程序加載到內(nèi)核中,生成需要的模塊形式,重新編譯內(nèi)核,下載到開發(fā)板上。
    向內(nèi)核中添加TVOUT CH7024驅(qū)動的流程如下:
    (1)選擇一個放置驅(qū)動代碼的位置:drivers/video/mxc/把代碼放到這個目錄中。
    (2)在drivers/video/mxc/添加Kconfig文件,內(nèi)容如下:
   

    (3)編寫makefile,內(nèi)容為:
   
    (4)修改上一級Makefile和Kconfig,即video目錄下的Makefile和Kconfig,在Makefile中添加:
   
    (5)在arch/arm的Kconfig中添加:

    至此,修改完畢。此時可以使用make menuconfig。出現(xiàn)內(nèi)核配置的窗口如圖5所示。


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

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

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

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

本屆年會將在上海(11月13-14日)、北京(11月19-20日)和深圳(11月27-28日)舉行,面向嵌入式設(shè)計工程師推出25門技術(shù)課程

關(guān)鍵字: 嵌入式 MCU 模擬

上海2025年9月5日 /美通社/ -- 由紐倫堡會展(上海)有限公司舉辦的上海國際嵌入式會議將于 2025 年 10 月 16-17 日在上海世博展覽館舉辦。 此次會議將由三個版塊組成:嵌入式技術(shù)會議、汽...

關(guān)鍵字: 嵌入式 CE CHINA EMBEDDED

從外部看,電子系統(tǒng)仿佛一個統(tǒng)一的學科或設(shè)備,各組成部分協(xié)同工作,渾然一體。然而揭開表象,其內(nèi)在卻是另一番景象:一個碎片化、多層次的世界——其中每一層都獨立且復雜,衍生出各自特有的工具、專家、工作流程,甚至哲學體系。

關(guān)鍵字: 嵌入式 電子系統(tǒng) 半導體

8位單片機在嵌入式設(shè)計領(lǐng)域已經(jīng)成為半個多世紀以來的主流選擇。盡管嵌入式系統(tǒng)市場日益復雜,8位單片機依然不斷發(fā)展,積極應(yīng)對新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機系列,配備了先進的獨立...

關(guān)鍵字: 單片機 嵌入式 CPU

深圳2025年8月28日 /美通社/ -- 8月26日,2025 ELEXCON深圳國際電子展盛大啟幕。本屆大會以"All for AI"為主題,深圳市德...

關(guān)鍵字: AI 工業(yè)級 SSD 嵌入式

深圳2025年8月26日 /美通社/ -- 8月26日,由博聞創(chuàng)意會展主辦的 第22屆深圳國際電子展暨嵌入式展(elexcon2025)在深圳(福田)會展中心隆重開幕。 作為中國電子與嵌入式技術(shù)領(lǐng)域的專業(yè)大展,本屆展會...

關(guān)鍵字: 嵌入式 電子 高通 AI

模塊化設(shè)計作為一種將系統(tǒng)拆分為獨立、可復用組件的方法,能夠在低代碼平臺中實現(xiàn)功能的靈活組合,并最大限度地提升系統(tǒng)性能。本文將探討如何通過模塊化設(shè)計,使得低代碼平臺既能快速適應(yīng)變化,又能保持高效穩(wěn)定的運行。

關(guān)鍵字: 模塊化設(shè)計 嵌入式

CPU親和度通過限制進程或線程可以運行的CPU核心集合,使得它們只能在指定的CPU核心上執(zhí)行。這可以減少CPU緩存的失效次數(shù),提高緩存命中率,從而提升系統(tǒng)性能。

關(guān)鍵字: Linux 嵌入式

加密算法分對稱加密和非對稱算法,其中對稱加密算法的加密與解密密鑰相同,非對稱加密算法的加密密鑰與解密密鑰不同,此外,還有一類不需要密鑰的散列算法。

關(guān)鍵字: 算法 嵌入式

從本質(zhì)上講,算法是一種有條不紊、分步驟解決問題或完成任務(wù)的方法。無論是簡單的數(shù)字相加公式,還是復雜的機器學習協(xié)議,算法都是軟件應(yīng)用的基礎(chǔ),確保任務(wù)能夠高效有效地執(zhí)行。

關(guān)鍵字: 算法 嵌入式
關(guān)閉