PIC18f4321单片机 内部EEPROM只能写一个地址,断电不保存

2020-02-06 10:02发布

void  WR_EEP(uchar  addr,uchar  dat)
{
                EEADR = addr;
                EEDATA = dat;
                EEPGD = 0;
                CFGS = 0;
                WREN = 1;
                GIE = 0;
                EECON2 = 0x55;
                EECON2 = 0xAA;
                WR = 1;
                while(WR);
                GIE = 1;
                WREN = 0;
}

uchar  RD_EEP(uchar  addr)
{
                EEADR = addr;
                EEPGD = 0;
                CFGS = 0;
                RD = 1;
                return  EEDATA;
}

WR__EEP(0,10);
val = RD_EEP(0);
可以读出来10;
//WR__EEP(0,10);
val = RD_EEP(0);
断电后,读出来是0.不解啊。
仿真结果竟然EECON2写不进去。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。