单板机编程功能的扩展方法

🏠 首页 《无线电》杂志 1987年 🔗 第214期 🔗 第7页 分类:技术市场 🔗 郭唐惠 🔗

EPROM是微机系统不可缺少的存贮器之一,近年来随着它的不断发展,容量成倍增加,如2716(2KB),2732(4KB),2764(8KB)等,应用日趋广泛。TP801单板机虽然能对2716进行编程写入,但对容量更大的2732等EPROM就无能为力了。这给开发应用大容量的EPROM带来了许多不便。本人经过摸索,在不影响单板机原有功能的前提下,对电路作了些改进,弥补了Z80单板机编程功能的不足,使它能够满足多种EPROM的编程要求。

一、EPROM的编程条件

EPROM的结构及原理决定了它只能在一定条件下才可以进行编程写入,并且只能将它的存贮数据由1写为0。若要由0恢复为1,就必须将其置于波长为2537A·的紫外光下,照射20~40分钟。图①给出了几种EPROM的引脚排布图。

图1
图1 🔍原图 (1362×567)

二、单板机编程的缺陷

这里先简单介绍一下TP801机的编程过程。它分三个阶段,参见电路图2。准备阶段它首先将CTC通道2设置为定时器工作方式,定时26ms,禁止中断;使编程允许(PGM PULSE ENABLE)信号变为高电平,从而撤除对D触发器Q\(_{1}\)~Q3的封闭,同时使CS-维持高电平状态(写入要求)。接下来是写入工作阶段,于是PROM2 SET-变低,使得Q\(_{1}\)-也变低,PD/PGM变高,WAIT-变低有效,CPU进入等待状态;当ZC2上第二个脉冲(52ms后)出现时,Q3变高,从而PD/PGM变低,WAIT-变高失效,CPU退出等待状态,完成了一个单元的编写工作,进入事后处理阶段,使得PROM2 SET-变高,编程允许信号变低,将Q\(_{1}\)~Q3清0,复位CTC,为写下一单元作好准备。重复上述过程直到给定字节全部写完,最后进行校验工作。

图2
图2 🔍原图 (1010×444)

可以看出,单板机的编程过程是很烦锁的。本人在详细分析了它的这部分软硬件后,觉得有以下几个主要方面存在着不足。

1.它只能对2K字节以下的EPROM进行编程写入,不便于开发应用容量在2K字节以上的EPROM,如2764等。

2.它只能固定将2000H开始的、最多2K字节的内存区域的内容写到首地址在1000H处的EPROM中,缺乏灵活性,给实际应用增添了困难。

3.个别或少量单元的修改同写整片EPROM一样,需要将原片中待修改的内容存入RAM中加以修改后重写一遍,这样不仅给科研、实验带来了不便,而且操作烦锁,容易出错,浪费时间,同时还增加了损坏EPROM芯片的几率,缩短了它的使用寿命。

4.编程电源V\(_{PP}\)是用手动开、关的,容易造成EPROM的损坏,这一点经常操作的人是深有体会的。手动不仅可能导致芯片的损坏,而且还会扰乱RAM中的内容。此外,将VPP与V\(_{CC}\)的开关次序颠倒也是损坏EPROM的一个重要原因。正确的开关次序应是:先开VCC,编程完毕后先关V\(_{PP}\),后关VCC。

三、编程的改进及电路分析

鉴于以上几点不足,本人通过实验,对电路作了一些修改。如图3所示。

图3
图3 🔍原图 (1258×498)

1.电路性能:该电路是在保留了原电路(图2)所有功能的基础上设计的,简单可靠,只增加了几个元件就使编程功能得到了扩展,同时也大大增强了操作的灵活性:如可读写2732、2764等大容量EPROM;对EPROM的写入可以是从任何地址开始的任意字节数(见使用方法);对个别或少数单元的写入与修改可以直接利用存贮器检查修改键,即“MEM”键,与检查修改RAM没什么两样;另外V\(_{PP}\)的开与关改用电路自动完成,无需人工干预,因此可以避免由于操作不当而损坏EPROM。

2.电路描述:该电路结构简单,工作可靠。关键元件IC\(_{3}\)是一个单稳态触发器。EPROM的编程条件由它及周围的元件提供。IC1、IC\(_{3}\)的引脚见图4。

当CPU发出写命令时,片选及读非(RD-代替写)信号经IC\(_{1a}\)相“或”后,输出一个负脉冲将IC3触发,在IC\(_{3}\)的输出端Q及Q-即可获得一对有固定宽度的脉冲(脉宽约为50mS)。Q-端的负脉冲经过“或门”IC1c后。分别加到EPROM的PGM(即编程允许)端及BG\(_{1}\)的基极,使PGM、与VPP有效,对EPROM写入。(待续)(郭唐惠)