隨著銀行客戶終端ATM自動提未機的推廣使用,其安全防范工作顯得越來越重要,難度也越來越大。因此,針對ATM的數字視頻監控系統便應運而生。數字視頻監控系統常常采用在屏顯示(On Screen Display,OSD)技術實現人機界面。在屏顯示技術就是在圖像上疊加文字,使顯示屏幕為用戶提供更多的附加信息。在ATM監控中,銀行對OSD功能有著特殊的要求:
(1)將ATM機號、時間、日期、卡號、數據疊加在所錄視頻圖像上,并且要在每個畫面上疊加上鏡頭的地信息。這些信息疊加以后就成為圖像的一部分,作為視頻圖像的說明,便于進行監控和查詢。
(2)在回放或者監控時要提供友好的用戶菜單,用來進行系統的設置和查詢等操作。這些菜單信息只是給用戶提供交互的信息,不破壞圖像的完整性,并且不隨圖像數據傳輸和存儲。
本文針對ATM監控系統對OSD功能的要求,在自行設計的一款ATM監控設備中用不同的方法實現了兩種OSD功能。所采用的方法經濟、實用,具有普遍意義,也可以推廣到其它的數字視頻監控系統中。
1 系統簡介
本監控系統是一個基于嵌入式CPU和新型MPEC-4硬件編、解碼芯片的系統,提供兩路視頻輸入。為了節約成本,兩路視頻信號復合成畫中畫進行壓縮編碼,由嵌入式CPU從PCI接口對壓縮數據進行存儲和傳輸。其輸出端提供實時的視頻輸出和畫中畫回放數據輸出。系統硬件結構圖如圖1所示。
視頻A/D轉換器選用PHILIPS公司的SAA7113H,通過I2C總線進行寄存器管理,輸出標準ITU656接口數據。
畫面分割芯片選用A.LOGICS公司的AM-204M五畫面分割器,通過對其寄存器的編程實現兩路視頻信號的畫中畫疊加。在實際應用中,主畫面監控整個提款機終端,子畫面監控出鈔口。這款芯片還具有OSD功能,用它可實現圖像附加信息的疊加。
模擬開關用來選擇視頻是輸出壓縮前的實時視頻還是回放錄像文件的視頻,用兩片FAIRCHILD公司的74LVT16245總線驅動芯片來實現這部分功能。一片接壓縮編碼前的數據,另一片接回放的視頻數據,兩片芯片的輸出接在一起送到D/A芯片去實現視頻的顯示。單片機控制74LVT16245的使能端,根據需要讓其中一片74LT16245輸出視頻數據,實現輸出視頻的選擇。這樣,通過對單片機編程,就可以控制在監視器上輸出實時視頻還是回放錄像文件的視頻。
視頻D/A轉換器選用PHILIPS公司的SAA7121,通過I2C總線進行寄存器管理、輸入ITU656接口數據、輸出模擬視頻。
要想使OSD疊加的信息能作為圖像的一部分,即圖像的附加信息(如日期等)存儲到文件中,必須將信息疊是模擬視頻輸入端,將信息直接和模擬視頻疊加后再進行A/D視頻轉換。另一個是在畫面分割器后端的數字視頻上疊加信息。這兩種方法要用到不同的OSD芯片,雖然效果較好,但增加了設備的成本和電路板的尺寸。在實際的設計中,選用了一款帶有OSD功能的畫面分割芯片AM-204M,直接在畫面分割芯片中疊加字符信息,較好地解決了這個問題。
要實現作為用戶操作界面信息的OSD信息的疊加,這里把這部分OSD功能加在視頻D/A芯片的復合視頻廣播信號(CVBS)的輸出上。這部分OSD功能提供信息給用戶,不破壞圖像數據的完整性。由于菜單所需要的信息較多,并且本系統主要是針對國內用戶,要求用漢字菜單,所以選用的OSD芯但要提供漢字信息,而且要有足夠的漢字庫。事實上目前市場上大多數的OSD芯片都只能提供簡單的字符信息疊加。通過綜合的比較,最終選用了FUJISU公司的MB90092芯片。
這里采用單片機AT89C55WD控制畫面分割芯片和MB90092芯片實現OSD疊加。所需要的時間信息由單片機通過時鐘芯片獲得,ATM的機號和卡號從單片機的串行口獲得。用戶通過接口菜單的一些設置信息,完成單片機與嵌入式CPU的通信。單片機和兩個用作OSD的芯片的連接如圖2所示。
2 用畫面分割芯片實現OSD字符的疊加
OSD字符的疊加由A.LOGIC公司的畫面分割芯片AM-204M實現。AM-204M有較強的OSD功能,可實現字符OSD和位圖OSD功能。實際上它的OSD功能通過其內部的只讀存儲器和隨機存儲器兩部分完成。只讀存儲器存儲了128個常用的字符,包括字母和標點符號等,在出廠前一般都已經設定好了。隨機存儲器中可以存儲64個字節,用戶可以編程設定這部分字符,靈活運用這部分存儲器的內容可以實現多種格式的OSD信息。每屏顯示的字符容量最大是34列×22行。字符采用彩色顯示,在一個屏幕內最多可同時顯示三種顏色。在625線的系統中,字符大小為20×24點陣時就可以有較好的效果。
2.1 畫面分割芯片主要控制管腳說明
單片機通過操作畫面分割的HOST接口就可以對寄存器進行管理,以此來實現OSD功能。面畫分割芯片AM204M主要接口管腳如下:
ADEN:芯片地址使能輸入,下降沿取地址數據。
WREN:芯片寫使能輸入,上升沿有效。
RDEN:芯片讀使能輸入,低電平有效。
MDATA[7:0]:并行數據口,是單牒同對AM-204M進行讀寫操作的數據口。
2.2 芯片OSD的寫RAM接口時序
AM-204M有幾個專用的寄存器,用于對OSD功能(包括OSD開關、位置、背景等)進行管理。設計人員可以自定義一些字符或者漢字放在RAM內用于顯示,芯片的RAM可一次寫入64個字符。圖3是通過HOST接口往RAM存儲器中寫一個字符的時序。圖中D0-D7是一個字符的二進制點陣信息。
ROM存儲的128個字符占用的CODE(oram_data[7:0])的地址范圍為00~7F。而RAM寫入的64個字節占用的CODE地址從80開始,為一個連續的地址空間。在系統工作時,AT89C55單片機首先要得到疊加的信息,然后從字符存儲區中取出相應的字符,疊加到屏幕上的適當的區域。字符的RAM表如表1所示。
表1 字符在RAM中的位置與編碼的對應關系
3 用OSD芯片實現用戶菜單的疊加
MB90092是用CMOS工藝制成的OSD可編程大規模集成電路芯片,可用于計算機控制的錄像機、VCD等的屏幕字符顯示。該芯片有視頻信號輸入輸出功能,可作為一種通用的OSD芯片,完成視頻信號與字符的疊加顯示。芯片可外接2M字節的ROM,支持24×32點陣顯示方式,可在屏幕上疊加一個主屏幕和一個子屏幕,主屏上疊加12×24個漢字。它有視頻信號輸入腳,在其內部可完成視頻信號與漢字信號的疊加,直接輸出復合視頻信號。MB90092內部可自行產生同步信號,無需外加視頻信號和同步信號;可直接輸出漢字信號至監視器,在監視器上顯示不同背景顏色、不同漢字顏色的文本,利用此特點可設計系統的設置菜單。字庫芯片采用AT27C080,該芯片的存儲容量為1M字節,可存儲8K漢字。國標所規定的一、二級漢字均可包含,每個字占用128字節。漢字點陣為24×24。為適應MB90092,每個漢字的24~31字節、56~63字節、88~127字節應為空白。
3.1 芯片主要管腳功能說明和接口時序
IC:當TEST腳輸入低電平時,這個管腳能被用作芯片的RESET端。
CS:芯片的片選端,低電平有效。也可以用它來釋放power-on reset。
SCLK:時鐘輸入端,輸入讀數據時鐘。
SDA:串行數據輸入端。
EXHSYN:外部行同步信號輸入端,當對芯片內部寄存器進行適當設置時,這個管腳也可以作為復合同步信號輸入端。
VOUT:復合視頻輸出端(輸出信號的峰-峰值為2V)。
VIN:復合視頻信號輸入端,用于疊加顯示,要求信號的峰-峰值為2V.
EXS和XS:外接晶體端,為芯片內部的圖像提供振蕩時鐘,選用NTSC制式時,外接14.31818MHz的晶體;選用PAL制式時,外接17.734475MHz的晶體。
EXD和XD:連接外部的LC時鐘振蕩電路,為字符的產生提供打點時鐘,一般為6MHz或7MHz,據此確定電感、電容數值。
MB90092采用指令方式控制,外部單片機可以通過串行接口向MB90092發送指令,每個指令由兩個字節組成。第一個字節的前5位為命令碼,其余位和第二個字節為數據。指令能實現對字符顯示的各種控制,MB90092共有13種指令和兩種保留指令,具體功能見表2。
表2 MB90092指令集
MB90092與外部單片機的接口有自己獨特的時序,如圖4所示。首先,CS片選有效,在每個時鐘的上升沿,DATA數據1的bit進入MB90092內部的串行移位寄存器,8bit為一個字節;然后CS和SCLK分別為高,作為一個字節的結束;接著發送下個字節。在串行傳輸中,時鐘用來對收到的bit計數,通過強制CS為高,可以復位串行傳輸。通過強制CS從高到低,清除復位,使得隨后的8bit數據是一個字節數據。如果在8bit數據中間CS變高,則這個數據是無效的。
如圖4所示,數據A被寫入內部寄存器,數據B被忽略。
接口時序應注意以下幾點:
(1)為了保持字節同步,在串行數據傳輸之前,CS管腳應當先設成高,然后設成低。
(2)除了剛上電時,在串行傳輸之前,都應當強制SCLK管腳為高電平。
用匯編語言實現的寫一個字節程序如下:
WRITE_1BYTE:
SETB _CS
NOP
CLR _CS
MOV R6,#8
WR1:
NOP
CLR SCLK
RRC A
MOV SIN,C
NOP
NOP
SETB SCLK
DJNZ R6,WR1
NOP
SETB _CS
RET
程序中加入NOP指令是為了滿足MB90092對時序時間的要求。
3.2 漢字疊加與緩沖放大模塊
在視頻監控中,視頻流過解碼,使視頻D/A轉換模塊輸出的模擬視頻信號疊加上菜單漢字信息,然后經緩沖放大后輸出到監視器上。圖5為視頻漢字疊加與緩沖放大原理圖。
對圖5進行如下說明:
(1)圖5中同步分離由LM1881完成,分離出復合同信號送到字符疊加芯片供字符疊加使用。
(2)輸出緩沖放大采用OPA2354芯片。它的INA-管上的調節電阻分別為620Ω和330Ω。
3 使用MB90092應注意的問題
(1)程序開始時,要輸入CS四次去清除上電復位,然后所作的設置才是有效的。
(2)如果選擇外同步方式,只有當外同步信號存在時,MB90092才能接收控制命令。為了防止當視頻信號由“無”切換到“有”時監視器上產生字符丟失的情況,屏幕上疊加的所有字符每隔0.2秒要更新一次。這樣就不會發生字符丟失的現象。
(3)改動屏幕上的字符時,必須先清理內存區域,否則屏幕會出現亂碼及一些預料不到的顯示。清屏包括子屏清除和主屏清除。如果沒有用到子屏,只要在開始時清一次子屏就可以了(所謂清屏,就是在屏幕上相應位置寫空格字符)。
(4)上電復位后,為了有效設置屏幕及字體的各種民屬性、行距、顯示位置等,先選擇內異步方式,待設置完成后,再設定為外同步方式;否則,設置時如無外同步信號,所有的設置均為無效設置。
(5)由于視頻信號頻率較高、頻帶較寬,因而當兩路視頻信號相距較近時,容易產生串擾。為了盡量減少串擾,制板時需做到以下幾點:
*各種視頻信號間用較粗的地線隔開,視頻走線盡量石頭則粗;
*模擬地和數字地分開,只在電源處單點相連;
*開關電源時,應使交流電與直流低壓之間相距較遠,且用地線隔開;直流低壓與開關管的調整電路之間要用光耦隔開。
本文給出了兩種實現OSD的方法,分別用于ATM監控設備的不同模塊中。設計中考慮了實用和經濟兩個因素,從實際的產品來自,性能穩定可靠,具有很普遍的應用價值。
-
嵌入式
+關注
關注
5068文章
19020瀏覽量
303308 -
cpu
+關注
關注
68文章
10826瀏覽量
211158 -
視頻監控
+關注
關注
17文章
1708瀏覽量
64915 -
監控系統
+關注
關注
21文章
3860瀏覽量
173501
發布評論請先 登錄
相關推薦
評論