摘? 要: 提出一種新型的視頻字符疊加器的設計方案,,采用RS-485總線方式,用微機作為控制平臺,實現(xiàn)視頻圖像中任意字符的疊加,,該方案已應用在多媒體監(jiān)視系統(tǒng)上,。
關鍵詞: 多媒體監(jiān)視系統(tǒng)? 字符疊加? RS-485串行通信
?
在多媒體監(jiān)視系統(tǒng)中,,切換的視頻信號較多,,操作者很難快速判別某一圖像來自何處,因此需要在圖像上疊加地點信息,,如攝像機號或漢字地名?,F(xiàn)有的監(jiān)視系統(tǒng)中,大多數(shù)只能疊加有限的漢字字符,,應用范圍窄,,通用性差。本文提出了一種新型的視頻字符疊加器方案,,它用一臺微機作為控制主機,,采用RS-485串行通信協(xié)議,可以實現(xiàn)在視頻信號上疊加任意的字符,,在不改變?nèi)魏斡布娐返那闆r下,,按需要改變字符。
1 視頻字符疊加器設計方案
由于RS-485總線具有傳輸距離遠,、只用普通雙絞線即可掛接多至256個終端的特點,,因此本方案采用RS-485總線,用一臺微機作為控制主機,,16個AT89C52單片機作為從機,。由主機實時地向各個從機傳送待疊加字符的點陣數(shù)據(jù)和控制信號,單片機接收字符點陣數(shù)據(jù)并存入字符存儲器中,,以此來實現(xiàn)任意字符的疊加,。同時單片機還接收主機傳送過來的控制信息,實現(xiàn)對顯示字符屬性(如顏色,,大小等等)的控制,。主機的RS-232串行口通過外差式的RS-232/RS-485轉換器轉換成RS-485的數(shù)字信號總線。單片機的串行口通過MAX1483芯片轉換成RS-485規(guī)程。微機與單片機之間通過RS-485數(shù)字信號總線進行串行通信,。系統(tǒng)原理圖如圖1所示,。
?
?
2 OSD芯片簡介
OSD(On Screen Display)專用集成電路芯片是專門為在屏幕上顯示字符設計的,本方案選用的MB90092是FUJITSU公司生產(chǎn)的OSD芯片,,它能和各種單片機一起來設計字符疊加器,,使用方便。
2.1 OSD芯片主要特點
· 顯示字符數(shù)為12行24列共288個字符;
· 最多可顯示8192個字符;
· 字符大小共有5種;
· 字符顏色有黑,、藍、綠,、青,、紅、棕,、黃,、白等8種;
· 字符背景顏色有黑、藍,、綠,、青、紅,、棕,、黃、白等8種;
· 字符背景顯示方式:3種;
· 字符點陣:24(水平)×32(垂直)點;
· 顯示位置控制:水平,、垂直,、行間距可調;
· 閃爍:可選擇ON/OFF兩種閃爍狀態(tài)。閃爍比為1:1 ,,閃爍頻率可在1Hz,、2Hz、0.5Hz中任選;
· 視頻制式:NTSC/PAL;
· 可與單片機直接接口,,帶有8位串行輸入接口;
· 封裝形式:QFP-80
2.2 OSD芯片內(nèi)部功能結構
MB90092由串行輸入控制單元,、同步分離電路、視頻信號發(fā)生器,、VRAM,、外部字符存儲器控制單元、模擬開關以及時鐘振蕩器七個主要部分組成,,其內(nèi)部功能結構框圖如圖2所示,。
?
2.3 編程命令
MB90092的控制命令是雙字節(jié)命令,采用8位串行輸入形式,。單片機通過,、SCLK和SIN對MB90092進行控制。控制命令主要是對其內(nèi)部的VRAM和寄存器進行設置,,包括設置需要顯示的字符,、字符和字符背景的顏色、字符大小,、同步方式,、屏幕背景顏色、視頻信號制式以及字符顯示的位置等,。
3 字符顯示模塊的硬件設計
字符顯示模塊的硬件電路如圖3所示,。MB90092需要外加字符存儲器,其中存放的是MB90092可以識別的待疊加字符的點陣(24×32點陣),,根據(jù)單片機發(fā)送的命令,,MB90092自動發(fā)出讀信號READ,讀取字符存儲器中的點陣并顯示在屏幕上,。由于監(jiān)視現(xiàn)場的地點有可能改變,,因此要求字符存儲器中存儲的字符點陣也能隨之改變,于是選用電可擦除存儲器Flash Memory,。它的最大優(yōu)點在于支持在線編程,,允許芯片在不離開電路板的情況下,實施固化和擦除操作,,可重復擦寫10萬次以上,,并且存儲的數(shù)據(jù)掉電不丟失,因此可以保證存儲在其中的字符點陣可按需要改變,,并且不會丟失,。
?
?
待疊加字符的點陣是通過串行口由微機傳送給單片機,再由單片機傳送給字符存儲器的,。這其中存在一個問題,,由于單片機、MB90092和字符存儲器Flash Memory的數(shù)據(jù)總線,、地址總線以及讀,、寫信號線都連在一起,因此在使用中會出現(xiàn)總線沖突的現(xiàn)象,。為了解決這個問題,,在設計中增加了隔離電路將它們隔離開來。在單片機向字符存儲器傳輸點陣時,,將MB90092的數(shù)據(jù)線,、地址線以及讀信號線置為高阻,以保證單片機傳輸點陣正確;而當字符存儲器向MB90092傳輸點陣時,,將單片機的數(shù)據(jù)線,、地址線以及讀、寫信號線置為高阻,以保證MB90092讀取點陣正確,。
字符存儲器Flash Memory的容量為256K,,但是采用單片機89C52的16位地址線,只能尋址64K字節(jié)的存儲器,,因此采用了將Flash Memory的最高兩位地址接到89C52的輸出端P1.0和P1.1上的辦法,。這實際上是將256K字節(jié)的Flash Memory分為四個部分,每部分64K字節(jié),,對每一部分依次傳輸數(shù)據(jù),。
另外,還需要外加同步分離電路將輸入視頻信號的行,、場同步信號送給MB90092,,以此來保證視頻信號與字符信息的同步。輸入的復合視頻信號經(jīng)過視頻放大電路將電壓由1Vp-p(峰峰值)轉換為2Vp-p(峰峰值)后,,再送至MB90092的視頻信號輸入端,而從MB90092的視頻信號輸出端輸出的電壓為2Vp-p(峰峰值)的復合視頻信號要將其電壓轉換為1Vp-p(峰峰值)后,,再送至顯示設備,。
4 視頻字符疊加器的軟件設計
軟件主要包括系統(tǒng)復位初始化模塊、串行通信模塊和字符顯示模塊,。由于本方案的關鍵技術在于通過將待疊加字符的點陣數(shù)據(jù)由主機傳送給各個從機,,來實現(xiàn)任意字符的疊加,因此串行通信模塊是整個軟件的核心,。
串行通信程序所要完成的任務是將256K的字符點陣數(shù)據(jù)由微機傳送給單片機,,它包括兩方面:一方面是89C52單片機的通信程序,另一方面為PC機的通信程序,。PC主機的串行通信程序采用Visual Basic(簡稱VB)編程,,程序框圖如圖4所示。用VB提供的一個具有強大功能的通信控件MSCOMM,,利用該控件設置串行通信的數(shù)據(jù)發(fā)送和接收,,并且對串口狀態(tài)及串口通信的信息格式和協(xié)議進行設置。單片機89C52采用MCS51系列的匯編語言編程,,程序框圖如圖5所示,。它的數(shù)據(jù)通信由串行口完成,定時器1作為波特率發(fā)生器,,其工作方式設置為方式2,,串行口設置為工作方式1。系統(tǒng)中每臺單片機都給定了確定的地址碼,,當某臺單片機的地址碼與PC主機發(fā)出的地址碼相同時,,這臺單片機發(fā)出應答信號給PC機,而其它未被尋址的單片機不發(fā)應答信號。因此,,在某一時刻,,PC機只與一臺單片機通信,從根本上避免了通信總線上的競爭,。
?
?
本文提出的方案解決了目前大多數(shù)字符疊加器顯示字符數(shù)有限且不可更改的弊端,,實現(xiàn)了視頻圖像中任意字符的疊加。該方案已成功地應用在多媒體監(jiān)視系統(tǒng)中,,設備運行穩(wěn)定,,性能良好。
?
參考文獻
1 趙堅勇,,施一飛.時間日期疊加器的設計.電視技術,,1997;(2)
2 何立民. MCS-51系列單片機應用設計——系統(tǒng)配置與接口技術.北京:航空航天大學出版社,1990