引言
为适应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系统开发人员起到一定的指导作用。