protues仿真51使用27c512进行ROM扩展

img


电路如图所示


#include <reg51.h>
#include <absacc.h>
unsigned char 
led[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//字型码

void delay()//延时函数
{
    int i,j;
    for(i=0;i<3000;i++)
    for(j=0;j<10;j++);
}
int main(void)
{
    unsigned char i;
        while(1)
        {
            for(i=0;i<10;i++)//循环显示10个数字
            {
                P1=led[i];
                delay();//延时一段时间
            }
    }
}

img


80c51里面没有hex

img


27c512中有hex

功能实现是用27c512扩展80c51的ROM,让数码管显示0-9,其中程序烧入在27c512中。
程序烧入到80c51里运行是正常的,但是清除80c51的程序,然后把程序烧入到27c512中,不能正常运行,数码管不显示
我知道的是:单片机EA高电平cpu只访问单片机内部的程序存储器并执行内部程序存储器中的指令,当EA低电平时cpu只访问外部程序存储器并执行外部程序存储器中的指令
我遇到的问题:程序烧入进80c51无论EA高或者低电平,数码管都能正常显示,但是程序烧入27c512中,不管EA高或者低,都不能正常运行,我怀疑是不是需要其他设置

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。