PIC的EEPROM的读写问题 5

我是想问个问题的:关于EEPROM的读写。main(){ucharEEP1,OUT;EEP1=EEPRM_READ(0x00);if(EEP1>2)EEP1=0;OUT=... 我是想问个问题的:关于EEPROM的读写。
main()
{ uchar EEP1,OUT;
EEP1=EEPRM_READ(0x00);
if(EEP1>2)
EEP1=0;
OUT=EEP1;
while(1)
{ ...
...
EEPRM_WRITE(0x01,OUT);
...

}

}

void EEPRM_WRITE(uchar adr,uchar data)
{ do
{
;
}while(WRERR!=0);
EEADR=adr;
EEDATA=data;
WREN=1;
EECON2=0x55;
EECON2=0xAA;
WR=1;
WREN=0;
}

uchar EEPRM_READ(uchar adr)
{ EEADR=adr;
RD=1;
return(EEDATA);
}
我这程序在我烧了进IC,未断电时很正常!
但在我进行断电,在接上电,也能显示在断电时的保存的数据,但当再执行到void write_in_eeprom(uchar write_add,uchar write_data)函数时,却一直在此循环,
do
{
;
}while(WRERR!=0);
死在了这里,出不来!
我想问,是什么原因造成的????烦请兄弟帮帮忙???万分感谢!!
展开
 我来答
样炫雪深越12528
2014-06-25 · TA获得超过118个赞
知道答主
回答量:116
采纳率:0%
帮助的人:106万
展开全部
你是通过在线仿真,变量观察的么?
1.首先你的E2是片内的还是片外的。
2.如果是片外的,看看你的接口时序的情况。
3.看你的描述像是片内的flash存储器,看看读取数据的地址,是在唯一地址上读取数么。
因为片内的flash的读写时序都是硬件完成的,几乎不会出问题。
4.仔细查看下程序吧,希望对你有所帮助
是否可以解决您的问题?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式