基于MB90092的視頻字符疊加系統設計
摘要:為了滿足某型車栽產品對于操控終端疊加字符信息的需求,根據視頻字符疊加基本原理,分析了幾種字符疊加方案,提出一種基于字符疊加芯片MB90092的字符疊加系統設計,并給出該系統的硬件電路設計及其軟件編程。實驗室運行結果表明,該系統運行穩定,可以將指定字符信息疊加于指定位置,且疊加內容根據需求可快速更換,可以用于工程應用。
本文引用地址:http://www.j9360.com/article/201610/307172.htm視頻字符疊加,是指在顯示屏幕的指定區域以一定的透明度顯示指定的圖像符號或字符。字符疊加在多媒體、監控系統、電視等領域有著廣泛需求,以視頻監控為例,在監控端需要接收外部數據并實時的顯示在監控屏幕上,如時間、機號、地點等信息。同時許多工業應用的人機界面和視頻播放場合也需要能夠疊加各種圖文信息,視頻字符疊加的應用可以顯著提高操控終端的操控性能和人機功效。
本文結合某型車載產品的要求:電視與熱像可自由切換、疊加器與上位機通過CAN總線進行通信的需求進行設計,給出基于視頻疊加芯片MB90092和單片機AT89S53的OSD系統設計,包括硬件電路和軟件設計兩部分,并通過實驗驗證了方案的可行性。
1 疊加原理
將一系列靜態圖像以電信號方式加以捕捉、記錄、處理、存儲,利用人眼的視覺暫留特性,以高于人跟閃爍頻率的速度進行圖像傳輸就形成了連續的感覺,在接收端進行重現就形成了視頻。
每一幅圖像都是由若干像素組成的,視頻傳輸時按照順序制將一個個像素的光學信息轉換成電信號,用一條通道依次傳輸出去,在接收端再按照同樣的順序將各電信號在相應的位置上轉換成光學信息。字符由24x32 dots(象素)構成,每個象素對應屏幕上一個點,疊加字符的本質就是把相應的字符象素疊加到用戶指定的位置。屏幕光柵由電子束在水平方向和垂直方向掃描形成,用內部時鐘作為點時鐘對屏幕上的象素點進行計數,行同步信號為換行信號控制像素的疊加。
2 方案選擇
常用的視頻字符疊加有以下4個方案:1)通用中小規模集成電路:采用通用中小規模集成電路實現單路視頻字符及時間疊加,這種方案需過于復雜,可靠性差;2)基于FPGA的方案:共用一片CPU、字庫ROM和實時時鐘,利用FPGA集成若干獨立的顯示RAM計數掃描電路,實現多路字符疊加。但在多路顯示中,必須使用多片RAM和大規模多路開關解決RAM的時分復用問題,大大增加了電路的復雜性,同時提高了成本;3)基于單片機的方案:利用軟件實現在消隱期內對顯示RAM的計數掃描和點陣數據的移位輸出,只適用于字符數量少的應用,容易造成視頻信號的不連續;4)基于專用字符疊加器的方案:專用字符疊加芯片通常允許用戶疊加文字和圖像,同時設置行距、字符大小等屬性,通常將字符信息做成字符庫存放于外部ROM中以方便調用。方案功能強,適用于顯示字符較多的場合,且價格適中。鑒于以上各方案特點,設計采用第四種方案,視頻處理流程如圖1所示。

3 系統設計
3.1 電源電路設計
系統預留24 V供電口,設計中除視頻切換開關AD8184采用±5 V供電外,其它芯片采用5 V供電。由于24 V與5 V的壓差太大,考慮到轉換效率以及散熱問題,設計選用開關型穩壓器LM2576獲得5 V電壓,利用電源翻轉芯片ICL7660獲得負極性電壓。LM2576電路中電容C2的耐壓值應大于額定輸出電壓的1.5~2倍,5 V輸出選擇耐壓16 V的電容。電壓翻轉電路中C3、C4采用漏電小、介質損耗低的鉭電容提高電源轉換效率,如圖2、3所示。

3.2 視頻箝位電路
視頻信號中包含交流和直流分量,信號經交流放大器處理時,由于放大器存在耦合電容,在處理過程中信號會丟失直流分量,而直流分量是圖像的黑電平(即同步電平),同步電平無法固定在同一電平上將嚴重影響視頻信號的行、場同步。選用MAX7452作為完整的前端視頻信號調節器,對輸入視頻信號進行預處理。
如圖4所示。將VBPLVL端直接箝位到地,可以省去輸出耦合電容,降低行時間失真的可能性,同時減小板上空間的需求。設置芯片引腳AGCD=0、GSET=1,可向標準視頻負載(150Ω)輸出2 Vp—p的滿幅視頻信號,并滿足MB90092需要1 V偏置電壓的要求。MAX7452的輸入至少在15行內沒有同步時,其LOS檢測器輸出一個邏輯高電平,與單片機的外部中斷0連接,可以有效指示攝像機或線纜的故障狀態。

3.3 視頻同步分離電路
全電視信號包含有視頻信號、復合同步信號、復合消隱信號、槽脈沖信號以及前后均衡脈沖信號,若要對視頻信號進行處理,就必須準確的提取出各信號并把握信號間的邏輯關系。LM1881是針對電視信號的視頻同步分離芯片,用于從峰峰值0.5~2 V的標準負極性PAL制視頻信號中提取定時信息。如圖5所示,芯片的2腳接一個復合輸入耦合電容,6腳接一個電流耦合電容以及一個680 kΩ的電阻用于設置內部電流值,該電阻使LM1881能用于水平掃描頻率不同于15.734 kHz的信號源。

3.4 字符疊加電路設計
MB9009是一款專用視頻字符疊加芯片,用以顯示控制視頻中的文字和圖像。芯片外部只需連接少量的電子元件就可以顯示漢字和圖形,可方便的嵌入各種數字視頻監控系統中,因而在各個行業和各種領域得到廣泛應用。
MB90092主要通過CS、SCLK、SIN3個引腳與MCU相連來接收外部控制指令和數據。MB90092共有13種指令和兩種保留指令,單片機通過這些指令實現對字符顯示的控制,每個指令由兩個字節組成,第一個字節的前5位為命令碼,其余位和第二個字節為數據。
芯片可通過地址和READ信號讀取外部字體存儲器中的字體數據,最大可控制外部16Mbits的字庫內存。時鐘模塊的輸入時鐘作為字符疊加的點時鐘,LM1881輸入的行、同步信號作為X、Y軸的復位時鐘來控制時序。漢字字庫存儲在外掛Flash存儲器。根據電路與外部字符存儲器的地址接口關系及電路讀取點陣數據的順序,將所需要疊加字符的點陣生成可燒結的HEX文件,燒錄到外部存儲器中。外掛的字庫模塊使用戶可以根據需要隨時更改字符點陣。
通過單片機向MB90092發送顯示以及寫數據控制指令,視頻信號經調節后與復合同步信號以及場同步信號一起被送入MB90092,MB90092根據微控制器的指令從字庫中調取字符,將原始視頻信號及疊加字符按一定比例混合,送出疊加后視頻,如圖6所示。

3.5 單片機系統
單片機負責兩方面的工作:1)通信:單片機利用SJA1000和TJA1050從CAN總線接收信息及數據;2)視頻疊加:單片機根據操控終端的請求,變換進入視頻疊加板的視頻信號,單片機的P1.2、P1.3端口連接到視頻切換開關AD8184的A0、A1,編程控制決定要進入疊加板的視頻信號,并根據從CAN總線獲得的數據和指令進行疊加。
3.6 通信電路設計
視頻疊加電路通過CAN總線與上位機進行通信,由于AT89S53單片機沒有自帶CAN總線接口,選擇PHILIPS公司的SJA1000作為CAN總線控制器,TJA1050作為總線驅動器。二者之間通過電磁隔離器ADum5241相連,可以實現總線上各CAN節點之間的電氣隔離。
SJA1000作為獨立CAN總線控制器,實現上位機與現場微處理器之間的數據通信。通過CAN總線接收來自上位機的數據進行分析組態然后傳給下位機的控制電路實現控制功能,當CAN總線接口接收到上位機的下傳數據,SJA1000就產生一個中斷,引發微處理器產生中斷,通過中斷處理程序接收每一幀信息。AT89S53是CAN總線接口電路的核心,其承擔CAN控制器的初始化、CAN的收發控制等任務。TJA1050是CAN協議控制器和物理總線的接口,引腳RS接地默認進入高速模式。選擇電磁耦合進行電氣隔離,相較于光耦隔離,磁隔離降低了功耗,比光耦具有更高的數據傳輸速率、時序精度和瞬態共模抑制能力,同時也消除了光耦不穩定的電流傳輸率、溫度和使用壽命等方面的問題。

設計通信電路時應注意:1)SJA1000的中斷輸出漏極開路,驅動單片機中斷引腳時應加上拉電阻;2)由于使用外接驅動器,RX1應接到CAN電平(比較器電平)的中點以旁路CAN比較器,減少延時;3)阻抗不連續和阻抗不匹配將導致信號反射,為了消除通信電纜中的信號反射,CAN總線通信時一定要加上120Ω的終端電阻,終端電阻對匹配總線阻抗起著非常重要的作用。忽略此電阻會使數字通信的抗干擾性和可靠性大大降低,甚至無法通信。
4 軟件設計
視頻疊加板的軟件分為CAN通信和疊加顯示兩個部分。軟件運行時首先完成單片機、SJA1000、MB90092芯片的初始化,開CAN中斷等待接收數據,接收到數據后置位標志位并進入中斷服務程序,根據指令完成MB90092的指令與數據傳輸,完成字符疊加后清除標志位,繼續等待CAN中斷。
字符疊加程序主要包含模擬SPI總線通信、MB90092的數據傳輸、芯片對于顯示字符的屬性設置、初始化程序以及片外存儲器尋址的一些函數。軟件流程如圖8所示。

5 結論
經過試驗驗證,該字符疊加器已經可以正常使用,在不影響原視頻顯示效果的基礎上,字符及圖形可以以指定的位置、大小準確的疊加在視頻上。本文設計的字符疊加器已經應用在某型車載產品中,可以準確接收外部指令及數據,任意切換電視以及熱像視頻,具有廣泛的應用價值和很高的性價比。
評論