在用于安全防范的电视监控系统中,可用微机控制录像机自动把出事现场的图像信息记忆下来,但当重放时,事件发生的准确时间却无法确定。视频时间日期发生器可以把事件发生的时间日期以字符的形式与视频信号叠加,一起记录在录像带上。这样,在录像重放过程中,不仅可以看到图像,而且可以看到事件发生的时间日期。
我们利用8031单片机设计的视频时间日期发生器,除数字式石英钟的全部功能外,还具有其它功能:
·系统自检;·大小月判断,闰年判断;·汉语语音报时;·闹钟;·农历显示;·两个提示警报控制;·定时器 (00秒~99分60秒);·节日显示:元旦、春节、五一、十一等;·叠加由键盘输入的说明文字。
硬件工作原理
视频时间日期发生器因电路较复杂,我们在这里只给出它的电路框图,如图1所示。主要由两大部分组成:时间日期产生部分和字符形成叠加部分。

时间日期产生部分以8031为CPU,外加扩展4K字节的EPROM芯片。由于采用了单片微机。使得硬件电路的设计大为简化,但功能却十分齐全。
字符形成的原理与计算机中的CRT字符显示基本相同,现简述如下:
需要显示的字符是用二进制数表示的,而二进制数只有转换成点阵形式才能显示。这可用字符发生器来实现。本机采用一块2716EPROM芯片作为点阵存储器,事先把组成每个字符的点阵写入2716EPROM;数字采用8×16点阵,汉字则采用16×16点阵。
单片机产生的时间日期,以二进制代码的形式输出,经数据选择器选择后,作为点阵存储器的低4位地址;而高4位地址,则由行计数器提供。字符发生器在8位地址的作用下进行译码,从而为每个光点行产生一组8位信号输出,提供每一行中将被显示的点。此点阵信息再送至由移位寄存器构成的字符点阵显示电路,进而把8位并行数据转换成串行数据流,不断送到视频叠加电路中,从而将时间日期显示在监视器的荧光屏上。
字符的“上下位置调整”和“左右位置调整”都是由单稳触发器组成的。他们对场行同步信号分别进行适当延时后启动“行计数器”和“像素计数器”调整这两个单稳触发器的延时时间,就可调整字符在监视器上的位置。
字符大小(宽窄)则是靠改变像素振荡器的频率实现的。频率越高,字符越窄。
监控程序设计
视频时间日期发生器主键盘共有4个键,其中两个功能键,两个调整键。
从键盘共26个键,与26个字母相对应。
监控程序包括自检程序、初始化程序、键盘搜索和分析程序等等。
因篇幅有限,我们主要分析一下时间产生中断服务程序,框图如图2所示。它利用8031单片机内部的定时器,每隔0.1s发出一次中断请求,待CPU响应中断后,则以0.1秒、秒、分、时、日、星期、月、年对实时时钟进行计数。即:0.1秒计数器计到10后清零,并向秒计数器进位;秒计数器计到60后清零,并向分计数器进位;分计数器计到60后清零,向时计数器进位;时计数器计到24后清零转日历计数程序。

日历计数程序,分别将日计数器单元和星期计数单元的内容增量。星期计数单元计到7时清零,日计数单元在计到29以前直接返回,否则月计数器的内容应作相应的调整。若为闰年和闰月,则在日计数单元的内容等于30时,调整相应计数器。若非2月份,则按每个月的最多天数,决定是否把日计数单元加1,在月计数单元等于12时,不执行加1,而是置月计数单元为1,并把年计数单元内容加1。若为4月,则转夏时制,若为9月,则退出夏时制。是否实行夏时制,由外部命令设定。
闹钟的实现是在中断服务程序中增加一条指令,将当前的时间与预置时间进行比较,如果相符则触发扬声器。
农历的产生则是利用建表和适当计算相结合的方法。这样,可使建表既不太长,又不需要大量计算。具体实现的方法是将每年12个月的2日农历建成一表,作为计算其它时间农历的依据,因此农历日的计算公式为:
当天的农历日期=(当天公历日期-2)+表中该月2日的农历日期
再通过对计算结果进行出界判断,并修正,即可得到所求的农历日。而对每月的1日的农历只要用减法即可。(白成林)