基于MAX7456的視頻字符疊加系統設計
目前視頻字符疊加器件主要有日本NEC公司生產(chǎn)的μPD6453,該器件成本較低,但控制字符內容和位置的靈活性較差;韓國三星公司生產(chǎn)的KS5514B-XX系列的字符疊加器件,可方便顯示日文,韓文,英文,但使用復雜、不支持中文的顯示;日本FUJITSU公司的MB90092字符疊加器件,使用方便、靈活性好,但需外接視頻分離電路,字符存儲器等;美國美信公司推出的MAX7456字符疊加器件,內部集成視頻分離電路,字符存儲器,而且可方便以任意字符、尺寸顯示所需信息,硬件設計更簡(jiǎn)單,成本更低,易于滿(mǎn)足實(shí)際需要。因此這里給出一種基于MAX7456的字符疊加系統設計方案。
1 系統設計
1.1 MAX7456簡(jiǎn)介
MAX7456視頻疊加器件是單通道、單色隨屏顯示(OSD)發(fā)生器,內部集成了視頻驅動(dòng)、同步分離器、視頻開(kāi)關(guān)以及EEPROM,采用符合NTSC和PAL制式的256個(gè)用戶(hù)可編程字符,能夠方便地以任意字符、尺寸顯示各種信息,預先裝載了256個(gè)字符和圖形,并可通過(guò)SPI接口進(jìn)行在線(xiàn)編程。器件內部包含36個(gè)寄存器,通過(guò)對寄存器的讀寫(xiě)可以對屏幕像素,各行字符的亮度,字符的閃爍、反色等進(jìn)行有效的控制??蓱糜诎踩O視系統,安全監控攝像機,室內娛樂(lè )系統,手持測量?jì)x器等領(lǐng)域。MAX7456主要具有特性:1)256個(gè)用戶(hù)字符或圖形存儲于EEPROM;2)字符大小為12x18像素;3)閃爍、反色和背景控制字符;4)可逐行設置亮度;5)最多可顯示16行x30列字符;6)視頻驅動(dòng)器輸出帶有衰減補償;7)內置同步發(fā)生器;8)SPI兼容串行接口。
MAX7456的主要引腳如下::輸入片選信號,低電平有效;SDIN:串行數據輸入,數據在SCLK上升沿移入;SCLK:串行時(shí)鐘輸入,占空比必須在40%到60%之間;SDOUT:串行數據輸出,數據在SCLK下降沿輸出,當
變?yōu)楦唠娖綍r(shí),變?yōu)楦咦杩?;PGND:驅動(dòng)器地;PVDD:驅動(dòng)器電源輸入;VIN:PAL或者NTSC,CVBS視頻輸入;VOUT:視頻輸出;SAG:電壓衰減修正輸入,不使用時(shí)連接至VOUT。
1.2 系統硬件設計
該字符疊加系統設計包括4個(gè)主要模塊電路:AT89C2051單片機、MAX7456專(zhuān)用字符疊加電路、攝像頭CCD輸入電路、顯示屏。其中AT89C2 051單片機作為控制電路,MAX7456對模擬視頻信號進(jìn)行字符及圖形疊加產(chǎn)生混合信號,采用顯示屏進(jìn)行顯示。系統整體設計框圖如圖1所示.
系統設計硬件電路如圖2所示。
選擇27 MHz的晶振G1與MAX7456并聯(lián),由于器件內部包含振蕩器所需要的電容,所以不需要外部負載電容。視頻信號輸入通過(guò)一個(gè)RC濾波電路接MAX7456的VIN引腳,視頻輸出信號由VOUT引腳輸出。MAX7456的,SDIN,SCLK,SDOUT引腳分別與單片機的P1.5,P1.4,P1.3,P1.2引腳相連。
在電路設計中,為了提高系統工作的穩定性和抗干擾性,不僅要考慮電路本身以及元件的各種噪聲干擾以及接地干擾等問(wèn)題。在數字電路中,由于電路常處于開(kāi)關(guān)狀態(tài),在電源供電端也會(huì )因而產(chǎn)生一些高頻帶噪聲,這些噪聲容易影響到其他電路。該系統設計連接有C8,C9退耦合電容,可有效過(guò)濾掉這些高頻噪聲,使其直接對地回流。由于系統中包含了數字信號與模擬信號,為了防止高頻數字噪聲耦合至視頻輸
出,必須對數字地與模擬地進(jìn)行一些處理。如果將二者完全隔開(kāi),獨立設置雖然可以解決噪聲干擾問(wèn)題,但勢必在整個(gè)電路中設置多個(gè)參考電位點(diǎn),也即設置2個(gè)不同標準,所以在實(shí)現上很難或者不可能。因此,該設計采用將所有數字地與模擬地各自連接,最后在一點(diǎn)將數字地與模擬地連接。這種接法實(shí)現了地之間沒(méi)有電流流通,抗干擾性較強。
電路的主要工作原理是單片機通過(guò)模擬SPI接口模式向MAX7456發(fā)送控制命令,如顯示模式,讀取字符存儲器等,MAX7456根據單片機的指令,修改或者讀取字符存儲器中的字符,并將圖像、字符混合后顯示在指定的位置上。
1.3 系統軟件設計
該系統通過(guò)串口接收命令,然后由中斷處理程序顯示疊加字符的軟件流程如圖3所示。
上電后,系統先對串口進(jìn)行初始化,然后設置視頻的輸出模式和線(xiàn)程模式,接著(zhù)單片機就等待串口傳來(lái)的命令,當有命令滿(mǎn)足中斷條件時(shí),單片機進(jìn)入中斷處理程序,將要顯示的字符在指定的位置上以指定的屬性疊加在視頻信號上。
單片機與MAX7456的通信主要是通過(guò)SPI接口來(lái)實(shí)現的,SPI的時(shí)序圖如圖4所示。當單片機向MAX7456寫(xiě)數據時(shí),首先拉低使能SPI口,在SCLK上升沿數據輸入SDIN。當
變?yōu)楦唠娖綍r(shí),數據被鎖存至輸入寄存器,如果
在傳輸過(guò)程中變?yōu)楦唠娖?,則本次操作失敗。
變?yōu)榈碗娖胶?,器件等待第一個(gè)輸入到SDIN中的字節。以確定所執行數據傳輸的類(lèi)型。SPI命令為16位,高8位代表寄存器地址,低8位代表數據。
2 創(chuàng )建新字符
由于MAX7456器件內部只集成了256個(gè)字符,這些字符并不能滿(mǎn)足所有的需要,因此需要創(chuàng )建所需要的字符。用戶(hù)定義的字符集結合輸入視頻流產(chǎn)生CVBS和OSD視頻輸出。最多可存儲256個(gè)12×18像素字符,可以進(jìn)行動(dòng)態(tài)設置。在525線(xiàn)模式時(shí),顯示13行x30字符;在625線(xiàn)模式時(shí),顯示16行x30字符。MAX7456 OSD含有兩組存儲器:顯示存儲器(SRAM)和非易失字符存儲器(NVM)。
顯示存儲器(SRAM)存儲480個(gè)字符地址,這些地址“指向”存儲在NVM字符存儲器中的字符。顯示存儲器中的內容可由用戶(hù)編程,具有SPI兼容串行接口。顯示存儲器地址對應于監視器的固定位置。每一字符都需要兩個(gè)字節,第1個(gè)字節含有字符存儲器中的字符數,第2個(gè)字節含有字符屬性狀態(tài)位,字符從左向右,自上而下排序。
非易失字符存儲器存儲要顯示的字符或圖形映射。字符存儲器中的內容可由用戶(hù)編程,采用SPI兼容串行接口。每一字符含有12行×18列像素。每一像素含有2個(gè)比特:00=黑色,不透明;0l=透明;10=白色,不透明;11=透明。因此,每個(gè)字符有12×18=216個(gè)像素,一個(gè)8位字節表示4個(gè)像素,所以每個(gè)字符需要216/4=54字節的數據。為方便尋址,存儲器組織結構采用64字節塊,每前54個(gè)字節表示一個(gè)字符,剩余10個(gè)字節沒(méi)有使用。所以,字符存儲器長(cháng)度是64×256=16 384字節。因此,每個(gè)顯示存儲器地址位置包含的數值實(shí)際是對應于所選字符的64字節塊地址。
使用MAX7456提供的GUI軟件,能夠控制器件,下載定制圖形。字符存儲器數據在一個(gè)文件中,文件的文件擴展名是*.mcm字符存儲器。用記事本打開(kāi)這個(gè)文件可以看到文件共有16 385行,第1行顯示的是MAX7456,第2行到最后一行顯示的都是8個(gè)二進(jìn)制的數據。修改這些8位的二進(jìn)制數就能夠得到需要的字符或圖形。
3 系統在導航中的應用
將攝像頭信號接入所設計的字符疊加系統,視頻輸出接LCD顯示屏,在顯示屏上疊加導航所需要的信息:南京理工大學(xué)(NJUST)、日期(2009年12月8日)、緯度(Lat 32.518)、經(jīng)度(Lon 118.137)、速度(V:15 m/s),航向(H:65.86),疊加效果如圖5所示。
從圖5可以看到,字符采用的是白底黑邊,無(wú)論光線(xiàn)強弱都可以很清楚地顯示所需要的信息,實(shí)際應用表明,本文設計的字符疊加系統操作方便,工作穩定,可以在比較復雜的環(huán)境中使用。
4 結束語(yǔ)
本文設計的視頻疊加系統具有電路結構簡(jiǎn)單,成本較低,使用方便的特點(diǎn),能實(shí)現視頻圖像中任意字符的疊加,當需要大的字符或者圖案顯示的時(shí)候,可將一個(gè)大的字符分成多個(gè)小的字符,也就是用多個(gè)54字節顯示。實(shí)際使用證明該系統具有體積小、顯示清晰、工作穩定、功耗低等特點(diǎn),因此該系統可以應用于軍事、航空、社會(huì )生活等監控系統中。
評論