為適應CCTV(閉路電視)安全產業產生文字和圖像并將其疊加到視頻圖像上的需求,MAXIM公司推出了MAX7456視頻字幕模塊。該器件是一款單通道、單色隨屏顯示(OSD)發生器,內置非易失存儲器(EEPROM)。器件可產生用戶定義的OSD并將其插入視頻信號所需的全部功能,同時兼容于NTSC和PAL視頻標準。本文結合實例論述了基于MAX7456的單色OSD系統的實現過程。 1 MAX7456的內部結構 MAX7456內部集成有產生用戶定義的OSD以及將其插入復合視頻信號所需的全部功能和EEPROM。該器件內置輸入箝位、同步發生器、視頻定時發生器、OSD插入MUX、非易失(EEPROM)字符存儲器、顯示存儲器、OSD發生器、晶體振蕩器、可讀/寫OSD數據的SPI兼容接口以及視頻驅動器。MAX7456芯片的內部結構如圖1所示。 MAX7456可提供閃爍、反色和背景控制等功能。同時,MAX7456可接受標準NTSC或PALCVBS等在安全產業視頻標準中常見的信號。因此,該器件可適用于大多數安防市場的需要。 2 OSD模塊的系統結構 采用MAX7456的單通道OSD發生器將會大大降低OSD系統的復雜性和成本。該系統僅需普通的微控制器芯片并配合相應的軟件,就能實現靈活多變的字幕顯示需求。圖2所示為MAX7456的應用系統框圖。圖中,PC通過RS232(串口)可將軟件生成的字庫信息下載到微控制器(MCU)中,該字庫信息再由微控制器(MCU)通過SPI(Serial Peripheral Interface Bus)接口存儲到MAX7456的EEPROM中。攝像頭輸出的模擬視頻信號經過OSD模塊的處理后,可以獲得需要的帶字幕的圖像。在微控制器中運行的軟件通過SPI接口則可以實時控制字幕的顯示內容。 3 OSD模塊的硬件結構 MAX7456作為OSD系統的核心部件,需要相應的外圍器件的配合才能發揮自己的作用。圖3所示為OSD模塊的硬件結構框圖。其中,MAX74 56負責對輸入的模擬視頻信號進行加字幕處理;MAXQ2000作為一顆低壓微功耗單片機,可通過GPIO模擬SPI接口時序為MAX7456提供相應的控制信號,并負責通過串口與PC通信,以獲得用戶自定義的字符集和配置信息;MAX3002是一顆雙向電平轉換芯片,它可將MXXQ2000的2.5V系統信號轉化為MAX7456可以使用的5V系統信號;MAX3311是與MAX02000配套的串口芯片,負責提供與PC通信的串口信號;MAX8881在此可將5V的供電轉化為單片機和buffer芯片需要的2.5 V電源。 4 OSD模塊的軟件結構 配合OSD模塊工作的軟件包括兩部分:一部分是運行于微控制器中的firmware,它包括SPI接口驅動、memory配置程序、寄存器配置程序、串口的事務通信等;另一部分是運行于PC端的用戶界面,可為用戶提供簡便的OSD設置和memory升級的功能。 4.1 MAX7456控制例程 MAX7456的SPI接口可支持高達10 MHz接口時鐘(SCLK)。寫寄存器時,拉低可使能串行接口,以在SCLK的上升沿從SDIN讀取數據;而當變為高電平時,數據將鎖存到輸入寄存器。如果傳輸過程中變高,則程序終止(即數據不寫入寄存器)。變低之后,器件將等待從SD-IN讀入第一個字節,以確定正在執行的數據傳輸類型。圖4所示為寫數據時序。 讀寄存器時,拉低。地址將在SCLK上升沿鎖入SDIN。然后,數據便可在SCLK的下降沿從SDOUT輸出。圖5所示是從器件讀數據的時序。 下面是具體的操作方法代碼: 4.2 PC端用戶界面 PC端的軟件可向用戶提供常用OSD配置信息,如視頻制式選擇、字幕亮度、翻轉方式、閃爍、選擇字幕文件等功能。圖6所示是其用戶界面圖。 這樣,通過軟件,用戶還可以編輯字幕顯示內容、自定義字符集和設置OSD背景顏色等。 4.3 編譯開發環境 運行于Windows平臺下的IAR EmbeddedWorkbench 2.10A是專門用于MAXO系列微控制器的集成開發工具之一,目前已被大多數MAXQ系列芯片開發所使用。但是,在IAR下建立新工程后,還需要設置編譯選項:General Option/Target/Device并選MAX200X。 5 結束語 MAX7546是一款單通道、單色隨屏顯示(OSD)發生器,使用它開發OSD系統不僅可以大大節省電路板空間和設計時間,同時還能以更低的成本提供更高的性能。本文介紹了OSD系統的基本構成,并從硬件和軟件兩方面闡述了使用MAX7456搭建模擬電視字幕隨屏顯示系統的技術要點,希望對OSD系統開發人員起到一定的指導作用。 |