基于MAX7456的视频字符叠加系统设计

发布者:电子思维最新更新时间:2011-09-03 关键字:MAX7456  视频字符叠加 手机看文章 扫描二维码
随时随地手机看文章

    目前视频字符叠加器件主要有日本NEC公司生产的μPD6453,该器件成本较低,但控制字符内容和位置的灵活性较差;韩国三星公司生产的KS5514B-XX系列的字符叠加器件,可方便显示日文,韩文,英文,但使用复杂、不支持中文的显示;日本FUJITSU公司的MB90092字符叠加器件,使用方便、灵活性好,但需外接视频分离电路,字符存储器等;美国美信公司推出的MAX7456字符叠加器件,内部集成视频分离电路,字符存储器,而且可方便以任意字符、尺寸显示所需信息,硬件设计更简单,成本更低,易于满足实际需要。因此这里给出一种基于MAX7456的字符叠加系统设计方案。

1 系统设计
1.1 MAX7456简介

    MAX7456视频叠加器件是单通道、单色随屏显示(OSD)发生器,内部集成了视频驱动、同步分离器、视频开关以及EEPROM,采用符合NTSC和PAL制式的256个用户可编程字符,能够方便地以任意字符、尺寸显示各种信息,预先装载了256个字符和图形,并可通过SPI接口进行在线编程。器件内部包含36个寄存器,通过对寄存器的读写可以对屏幕像素,各行字符的亮度,字符的闪烁、反色等进行有效的控制。可应用于安全监视系统,安全监控摄像机,室内娱乐系统,手持测量仪器等领域。MAX7456主要具有特性:1)256个用户字符或图形存储于EEPROM;2)字符大小为12x18像素;3)闪烁、反色和背景控制字符;4)可逐行设置亮度;5)最多可显示16行x30列字符;6)视频驱动器输出带有衰减补偿;7)内置同步发生器;8)SPI兼容串行接口。
    MAX7456的主要引脚如下::输入片选信号,低电平有效;SDIN:串行数据输入,数据在SCLK上升沿移入;SCLK:串行时钟输入,占空比必须在40%到60%之间;SDOUT:串行数据输出,数据在SCLK下降沿输出,当变为高电平时,变为高阻抗;PGND:驱动器地;PVDD:驱动器电源输入;VIN:PAL或者NTSC,CVBS视频输入;VOUT:视频输出;SAG:电压衰减修正输入,不使用时连接至VOUT。
1.2 系统硬件设计
    该字符叠加系统设计包括4个主要模块电路:AT89C2051单片机、MAX7456专用字符叠加电路、摄像头CCD输入电路、显示屏。其中AT89C2 051单片机作为控制电路,MAX7456对模拟视频信号进行字符及图形叠加产生混合信号,采用显示屏进行显示。系统整体设计框图如图1所示.
系统设计硬件电路如图2所示。


    选择27 MHz的晶振G1与MAX7456并联,由于器件内部包含振荡器所需要的电容,所以不需要外部负载电容。视频信号输入通过一个RC滤波电路接MAX7456的VIN引脚,视频输出信号由VOUT引脚输出。MAX7456的,SDIN,SCLK,SDOUT引脚分别与单片机的P1.5,P1.4,P1.3,P1.2引脚相连。
    在电路设计中,为了提高系统工作的稳定性和抗干扰性,不仅要考虑电路本身以及元件的各种噪声干扰以及接地干扰等问题。在数字电路中,由于电路常处于开关状态,在电源供电端也会因而产生一些高频带噪声,这些噪声容易影响到其他电路。该系统设计连接有C8,C9退耦合电容,可有效过滤掉这些高频噪声,使其直接对地回流。由于系统中包含了数字信号与模拟信号,为了防止高频数字噪声耦合至视频输
出,必须对数字地与模拟地进行一些处理。如果将二者完全隔开,独立设置虽然可以解决噪声干扰问题,但势必在整个电路中设置多个参考电位点,也即设置2个不同标准,所以在实现上很难或者不可能。因此,该设计采用将所有数字地与模拟地各自连接,最后在一点将数字地与模拟地连接。这种接法实现了地之间没有电流流通,抗干扰性较强。
    电路的主要工作原理是单片机通过模拟SPI接口模式向MAX7456发送控制命令,如显示模式,读取字符存储器等,MAX7456根据单片机的指令,修改或者读取字符存储器中的字符,并将图像、字符混合后显示在指定的位置上。

1.3 系统软件设计
    该系统通过串口接收命令,然后由中断处理程序显示叠加字符的软件流程如图3所示。


 


    上电后,系统先对串口进行初始化,然后设置视频的输出模式和线程模式,接着单片机就等待串口传来的命令,当有命令满足中断条件时,单片机进入中断处理程序,将要显示的字符在指定的位置上以指定的属性叠加在视频信号上。
    单片机与MAX7456的通信主要是通过SPI接口来实现的,SPI的时序图如图4所示。当单片机向MAX7456写数据时,首先拉低使能SPI口,在SCLK上升沿数据输入SDIN。当变为高电平时,数据被锁存至输入寄存器,如果在传输过程中变为高电平,则本次操作失败。变为低电平后,器件等待第一个输入到SDIN中的字节。以确定所执行数据传输的类型。SPI命令为16位,高8位代表寄存器地址,低8位代表数据。



2 创建新字符
    由于MAX7456器件内部只集成了256个字符,这些字符并不能满足所有的需要,因此需要创建所需要的字符。用户定义的字符集结合输入视频流产生CVBS和OSD视频输出。最多可存储256个12×18像素字符,可以进行动态设置。在525线模式时,显示13行x30字符;在625线模式时,显示16行x30字符。MAX7456 OSD含有两组存储器:显示存储器(SRAM)和非易失字符存储器(NVM)。
    显示存储器(SRAM)存储480个字符地址,这些地址“指向”存储在NVM字符存储器中的字符。显示存储器中的内容可由用户编程,具有SPI兼容串行接口。显示存储器地址对应于监视器的固定位置。每一字符都需要两个字节,第1个字节含有字符存储器中的字符数,第2个字节含有字符属性状态位,字符从左向右,自上而下排序。
    非易失字符存储器存储要显示的字符或图形映射。字符存储器中的内容可由用户编程,采用SPI兼容串行接口。每一字符含有12行×18列像素。每一像素含有2个比特:00=黑色,不透明;0l=透明;10=白色,不透明;11=透明。因此,每个字符有12×18=216个像素,一个8位字节表示4个像素,所以每个字符需要216/4=54字节的数据。为方便寻址,存储器组织结构采用64字节块,每前54个字节表示一个字符,剩余10个字节没有使用。所以,字符存储器长度是64×256=16 384字节。因此,每个显示存储器地址位置包含的数值实际是对应于所选字符的64字节块地址。
    使用MAX7456提供的GUI软件,能够控制器件,下载定制图形。字符存储器数据在一个文件中,文件的文件扩展名是*.mcm字符存储器。用记事本打开这个文件可以看到文件共有16 385行,第1行显示的是MAX7456,第2行到最后一行显示的都是8个二进制的数据。修改这些8位的二进制数就能够得到需要的字符或图形。

3 系统在导航中的应用
    将摄像头信号接入所设计的字符叠加系统,视频输出接LCD显示屏,在显示屏上叠加导航所需要的信息:南京理工大学(NJUST)、日期(2009年12月8日)、纬度(Lat 32.518)、经度(Lon 118.137)、速度(V:15 m/s),航向(H:65.86),叠加效果如图5所示。


    从图5可以看到,字符采用的是白底黑边,无论光线强弱都可以很清楚地显示所需要的信息,实际应用表明,本文设计的字符叠加系统操作方便,工作稳定,可以在比较复杂的环境中使用。

4 结束语
    本文设计的视频叠加系统具有电路结构简单,成本较低,使用方便的特点,能实现视频图像中任意字符的叠加,当需要大的字符或者图案显示的时候,可将一个大的字符分成多个小的字符,也就是用多个54字节显示。实际使用证明该系统具有体积小、显示清晰、工作稳定、功耗低等特点,因此该系统可以应用于军事、航空、社会生活等监控系统中。

关键字:MAX7456  视频字符叠加 引用地址:基于MAX7456的视频字符叠加系统设计

上一篇:基于AT89C51单片机的激光密码控制器的设计
下一篇:51单片机对SAA7113初始化和控制的程序

推荐阅读最新更新时间:2024-03-16 12:40

视频字符叠加技术的发展及四种实现方案
    摘要: 分析了视频字符叠加的作用和发展现状,介绍基于中小规模集成电路、FPGA、单片机和专用芯片的四种实现方案,并对它们各自的特点简要地作了分析和比较。     关键词: 视频字符叠加  单片机  现场可编程门阵列FPGA     视频字符及时间叠加器是在视频信号中混入字符或时间信号,从而在屏幕的特定位置上与图像信号同时进行显示的设备。这项技术是应用电视技术中的一个重要领域,在应用电视系统中发挥着重要的作用。从视频字符及时间叠加器的工作方式及本身电路的构成来看,已经历了三个不同的发展阶段 。     第一阶段是“图解显示控制”即GDC阶段。它是利用中小规模数字集成电路来实现各部分所要求的严格的
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved