首页 > 编程知识 正文

微型计算机存储系统中eprom是,存储器指的就是内存

时间:2023-05-03 07:18:42 阅读:150977 作者:1964

EPROM是一种常用的存储器,在单片机开发APP应用中普遍用作程序存储器。 实际上也是可编程逻辑器件(PLD ),除了可以使用它来实现逻辑函数之外,还可以实现复杂的测量和控制。 以下给出了两个应用实例。

高精度数字直流电压表

普通的数字电压表采用液晶显示,显示亮度不高,显示的数字也不大。 这里介绍以A/D转换器和EPROM为中心构成的大型显示LED数字直流电压表。 适用于教学实验演示和测量设备仪表盘等应用场合。

电路构成电路如下图所示。 IC1为MAX174,IC2为EPROM27512,IC-3至IC-6为BCD码7段显示解码驱动器,IC7为双时钟IC556,IC8为雾触发器CD4584。 四个LED数字显示器可以使用集成的LED器件,也可以使用LED。 也就是说,您可以将多个LED串联在一起,组成一个数字笔段,然后将7个笔段连接成数字显示器,以创建大型数字显示器。 满足特殊要求。 MAX174将模拟输入电压信号转换为12位数字信号,该数字信号并行输出EPROM的地址信号。 IC7为556双时基芯片,其中一组产生模数转换启动脉冲(R/C ),此时双时基芯片输出经微分电路处理后,由施密特触发器) 4584 )触发尖锐脉冲该脉冲的频率设定为2Hz左右即可。

EPROM保存与通过A/D转换获得的数字量相应的显示数据。 通过各A/D转换得到的数字的量被转换为4位的十进制,上位2位的数据存储在0H的地址,下位2位的数据存储在1H的地址(参照上表)。 IC7产生频率高于100Hz的矩形波脉冲输出,在脉冲的高电平阶段,EPROM的地址端子A12、IC3、IC4的LE端子均为低电平,此时,地址0H的数据为高位2位的LED 在脉冲的低电平阶段,EPROM的地址端子A12为高电平,IC5、IC6的LE端子为低电平,此时,地址1H的数据显示在低位2位的LED上。 这样,4位数据被分为两组,分别在IC7的输出脉冲的一个周期内以时分方式显示在LED上。 当前2位LED指示灯显示LE=0时,后2位LED指示灯为LE=1,因此不显示(暗); 相反,当显示后2位LED时,不显示前2位LED (较暗)。 为了避免这种断断续续的显示产生闪烁效果,IC7的输出脉冲的频率必须在人眼视觉反应频率(约12Hz )以上。 实际上,该频率可以设定为完全高于12Hz,例如也可以是100~1000Hz。

编程上图中MAX174的输入始终为0~ 20V,由于采用12位输出,因此全范围输出的数字量为FFFH(=4095 )。 分辨率=20V/4096=4.88mV/lLSB。 但是,由于显示只取小数点后2位,所以允许显示的分辨率为0.01V,因此EPROM的数据准确到小数点后2位即可。 EPROM的数据如上表所示。

另外,由于数据量较大,因此在创建数据并将其写入EPROM时,建议您单独编写程序来完成此任务。

功能扩展以上设计为0~ 20V单量程电压表。 要扩大范围,是个简单的方法。 只需在20V模拟输入端口上添加转换开关(1个双联双掷开关,一个用作模拟输入切换,另一个用作第2位LED和第3位LED小数点(DP )的切换) ),另一个0~200 但是,请注意20Vin输入端子只允许20V以下的输入。 200V输入需要施加十分之一(即20V以下)的衰减。

模拟输入为0~ 20V时,LED的第3位小数点DP3点亮,模拟输入为0~ 200V时,LED的第2位小数点DP2点亮。 这样,保存在EPROM地址中的数据都是与0~ 20V模拟量相对应的数字量。 没有必要设置两个数据。 如果设置0~ 10V量程测量(采用l0Vin输入端子),可以提高精度。 分辨率为0.001V。 但是,必须单独创建EPROM数据。 要设计更多的输入范围,可以利用EPROM的高位地址端,例如A13、A14切换范围。 在不同的EPROM地址段中存储不同范围的数据。 由于篇幅的关系,在此不详细叙述。

照明控制器

为了活跃节日的喜庆气氛,需要大规模的灯饰。 介绍用EPROM存储器控制照明的电路。

八路照明控制电路的电路如上图所示,时钟发生器向脉动计数器提供时钟信号CP。 时钟发生器可以使用基于555小时的电路。 脉动计数器可以使用12级脉动计数器电路4040,例如CD4040B。 的输出Ql~Q8访问EPROM存储器的地址信号端子A0~A7,EPROM可以采用27系列,如27512。 将指拨开关连接到EPROM剩下的地址端子(A8(A15 ) ),通过该指拨开关可以设定多个照明点亮方式。 EPROM的芯片选择CS和数据输出门OE都接地。

EPROM的8路输出分别被放大并连接到8路照明。 各照明不仅可以组合成一个,还可以串并行组合成多个集合。 对于220VAC的照明,EPROM的输出需要进一步处理。 例如,放大后连接继电器和晶闸管装置。

脉动计数器的输出按照0000H0001H0002H的自然二进制数的顺序变化。 的变化速度由时钟CP的频率控制,一般该频率必须为低值,具体应根据实际要求用“频率调节”按钮进行调整。

保存在EPROM中的数据与照明光的动作状况相对应,在比特值=0的情况下,可以保证对应的照明光消失,比特值=1

时表示其对应的那路彩灯亮。图2电路中,地址××00H中的数据若设定为OOH,则当按下复位开关时(产生的地址为××00H),对应的输出为00H,所有的彩灯灭。

如上图所示的连接,EPROM采用27512时,总共64KB的存储器空间被分为256个区间,每个区间有2的8次方=256B的容量。每个区间存放一个彩灯程序,总共可存放256个程序,即可以预设256种不同的彩灯点亮方式。假定脉冲频率是1Hz,则每个程序可播放2的8次方=256秒,约4分钟。一个彩灯程序播完又会从头开始播放(因为脉动计数器在脉冲的激励下按自然二迸制数加计数,计数满××FFH后又回到××OOH继续)。要改换彩灯点亮方式只需更改DIP开关的设置即可。

如果不需要256个这么多的彩灯点亮方式,只需将EPROM高位的地址端接地即可。比如说只需16个彩灯点亮方式,可将27512EPROM的A8~All接DIP开关,并将A12~A15接地。

多路扩展如果需要多于8路的彩灯控制,可以采用如图3所示的控制方法。这是一个64路输出的彩灯控制电路。当然,多于或少于64路的彩灯控制电路也可参照该方法处理。

上图中,EPROM的输出接八片8D数据锁存器芯片74HC373。它们的数据锁存允许端G(共八个)分别由3/8线译码器芯片74HC138的八路输出(并经反相器74HC04芯片反相后)进行控制。74HC138的地址输入端A0~A2分别接分频器4040芯片的输出Ql~Q3。EPROM中存储的数据在时钟CP的作用下,依次输出到数据锁存器373的输入端D0~D7,并被锁存在对应选通的74HC373芯片中。

当按下复位按钮时,EPROM的输入地址是OOH,所有的74HC373芯片的OC端为低电平,全部64路输出均为0,无彩灯亮。

在复位后的第1个时钟周期,4040输出00000000,即Q3Q2Ql=000,也即74HC138的地址输入为000,此时YO的反被选通。即IC7被选通。EPROM中地址××00H的数据被锁存到IC7。在第2个时钟周期,4040输出00000001,即Q3Q2Ql=001,也即74HC138的地址输入为001,此时可被选通。即IC8被选通。EPROM中地址××01H的数据被锁存到IC8。……,在笫8个时钟周期,4040输出00000111,即Q3Q2Q1=111,也即74HC138的地址输入为111,此时Y7的反被选通。即IC14被选通。EPROM中地址××07H的数据被锁存到IC14。在第9个时钟周期,4040输出00001000,即Q3Q2Ql=000,也即74HC138的地址输入为000,此时YO的反被选通。即IC7被逸通。EPROM中地址XX08H的数据被锁存到IC7。……。

可以看出,每8个时钟周期就可以将EPROM中连续8个地址单元的数据以位(BIT)的方式送至64个彩灯控制端。(注:这8个连续地址单元应是×××0~×××7H或×××8~×××FH,并且在这8个时钟周期内,未被选中的彩灯控制端的数据是保持的。)

如果在EPROM中存储如下数据就可以实现"逐次点亮1N64#彩灯":(假定此点亮方式的控制DIP开关均接地,即高位地址输入均为0)地址OOOOH中存储01H,0001~0007H中均存储00H;地址0008H中存储02H,0009~000FH中均存储OOH;地址0010H中存储04H,0011~0017H中均存储00H;……;地址OIF8H中存储80H,01F9~1FFH中均存储OOH。上列地址单元共有512个,用手工方式写入将十分繁琐。如果以编程方式产生各地址单元待存储的数据,并写入E-PROM将使其轻松许多。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。