2.读写操作 80C51访问 EEPROM时采用如下指令完成读写操作: M0VX@DPTR,A;将A中内容写入 EEPROM 或 MOVX A,@DPTR;将 EEPROM中内容读入A中 需要说明,由于 EEPROM的数据写入的间同较长,因 此在对 EEPROM的某一单元热行了写数据操作后, 般需要还时20m左右的的间才能对下一单元进行写操 作。所以在Wo@DPTR,A”指令后常加一条 软件延时20ms的周用子程序语句“LCAL D 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
2.读写操作 80C51访问EEPROM时采用如下指令完成读写操作: MOVX @ DPTR,A ;将A中内容写入EEPROM 或 MOVX A ,@DPTR ;将EEPROM中内容读入A中 需要说明,由于EEPROM的数据写入时间较长,因 此在对EEPROM的某一单元执行了写数据操作后,一 般需要延时20ms左右的时间才能对下一单元进行写操 作。所以在“MOVX @DPTR,A ”指令后常加一条 软件延时20ms的调用子程序语句“LCALL DELAY20”
6.25存储器的综合扩展 有时在一个系统中既要扩展程序存储器,又要扩展 数据存储器,这就是综合扩展。 1.单个芯片扩程序存储器和数据存储器 80C51单片机的程序存储器和数据存储器虽然彼此独立, 但我们可以用一定的控制电路对它们统一编址,此时数据存 储器、程序存储器和I/0共同占用64KB的存储空间。如果系 统对程序存储器和数据存储器的容量需求不大,可以只扩展 片 EEPROM,对其内部空间进行合理划分,将某一区域定义 为程序存储空间,其它区域设为数据存储空间。电路如图6 6所示。 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
6.2.5存储器的综合扩展 有时在一个系统中既要扩展程序存储器,又要扩展 数据存储器,这就是综合扩展。 1.单个芯片扩程序存储器和数据存储器 80C51单片机的程序存储器和数据存储器虽然彼此独立, 但我们可以用一定的控制电路对它们统一编址,此时数据存 储器、程序存储器和I/O共同占用64KB的存储空间。如果系 统对程序存储器和数据存储器的容量需求不大,可以只扩展 一片EEPROM,对其内部空间进行合理划分,将某一区域定义 为程序存储空间,其它区域设为数据存储空间。电路如图6- 6 所示
P2.7 2 P2.3 P2.2 P2.0 EA P0.7 P0.6 P0.5 P0.4 呢? Q P0.3 P0.2 P0.1 DDDD QQQQ A2864A EEPROM P0.0 ALE 0000 80C51 I/0 I/0 GND 图6-6存储器综合扩展电路 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
图6- 6 存储器综合扩展电路
在图中,将8001R(从数据存储器中读数据 PSE(选通程序存储器)信号相与后接入2864的 OE 引脚。这样,当RD或PSEN信号有一个为低电平时,就 能从存储器中读取相应的数据或程序。 (1)读程序 由于硬件连接使EA=0,所以单片机自动读取外部 程序存储器。因此要求用户在编制程序时要将程序存储 区和数据存储区划分清楚(伪指令0RG规定程序存储器地 址,指针DPTR指示数据存储器地址),存储程序时不要 占用数据存储区。 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
在图中,将80C51的 (从数据存储器中读数据)、 (选通程序存储器)信号相与后接入2864A的 引脚。这样,当 或 信号有一个为低电平时,就 能从存储器中读取相应的数据或程序。 RD PSEN OE RD PSEN (1)读程序 由于硬件连接使 =0,所以单片机自动读取外部 程序存储器。因此要求用户在编制程序时要将程序存储 区和数据存储区划分清楚(伪指令ORG规定程序存储器地 址,指针DPTR指示数据存储器地址),存储程序时不要 占用数据存储区。 EA
(2)读/写数据存储器 80C51读数据,是由指令性质决定的。当执行“MoX A,@DPTR”指令时,CPU时序使RD引脚输出低电平,于是 2864A的OB脚也为低电平,相应数据存储单元的数据会 出现在数据线上,80c51读入该数据,存在累加器A中。 同理,80c51要执行写操作时,CPU时序使单片机的WR 引脚输出低电平,可以对2864A执行写操作。 十一五国家级规为教材(高职高专) 高等教育出版社 HIGHER EDUCATION PRESS
(2)读/写数据存储器 80C51读数据,是由指令性质决定的。当执行“MOVX A,@DPTR”指令时,CPU时序使 引脚输出低电平,于是 2864A的 引脚也为低电平,相应数据存储单元的数据会 出现在数据线上,80C51读入该数据,存在累加器A中。 同理,80C51要执行写操作时,CPU时序使单片机的 引脚输出低电平,可以对2864A执行写操作。 RD OE WR