基于MB90092的视频字符叠加系统设计
扫描二维码
随时随地手机看文章
摘要:为了满足某型车栽产品对于操控终端叠加字符信息的需求,根据视频字符叠加基本原理,分析了几种字符叠加方案,提出一种基于字符叠加芯片MB90092的字符叠加系统设计,并给出该系统的硬件电路设计及其软件编程。实验室运行结果表明,该系统运行稳定,可以将指定字符信息叠加于指定位置,且叠加内容根据需求可快速更换,可以用于工程应用。
视频字符叠加,是指在显示屏幕的指定区域以一定的透明度显示指定的图像符号或字符。字符叠加在多媒体、监控系统、电视等领域有着广泛需求,以视频监控为例,在监控端需要接收外部数据并实时的显示在监控屏幕上,如时间、机号、地点等信息。同时许多工业应用的人机界面和视频播放场合也需要能够叠加各种图文信息,视频字符叠加的应用可以显著提高操控终端的操控性能和人机功效。
本文结合某型车载产品的要求:电视与热像可自由切换、叠加器与上位机通过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 结论
经过试验验证,该字符叠加器已经可以正常使用,在不影响原视频显示效果的基础上,字符及图形可以以指定的位置、大小准确的叠加在视频上。本文设计的字符叠加器已经应用在某型车载产品中,可以准确接收外部指令及数据,任意切换电视以及热像视频,具有广泛的应用价值和很高的性价比。