本帖最后由 liu@cqupt 于 2014-5-5 17:20 编辑
首先我是想一个按键按下后,将多个数据保存在0x2000扇区内,然后安另一个按键按下后,回复之前保存的值,结果都是用数码管显示,但是按下回复键后num1到num6都是num6的值,搞得好像num1到num5都没保存住,有哪位熟悉eepROM使用者解惑一下,
if(Key_u2==0)
{
SectorErase(0x2000);//擦除扇区
byte_write(0x2000+0,num1);//重新写入数据
byte_write(0x2000+2,num2);
byte_write(0x2000+4,num3);
byte_write(0x2000+6,num4);
byte_write(0x2000+8,num5);
byte_write(0x2000+10,num6);
}
}
if(Key_u3==0)//数据恢复键
{
DelayMS(200);
if(Key_u3==0)
{
num1=byte_read(0x2000); //程序开始时读取EEPROM中数据
num2=byte_read(0x2000+2);
num3=byte_read(0x2000+4);
num4=byte_read(0x2000+6);
num5=byte_read(0x2000+8);
num6=byte_read(0x2000+10);
}
}
附加一个stc89c52使用手册
-
-
STC89C52RC单片机使用说明.pdf
下载积分: 积分 -1 分
2.57 MB, 下载次数: 172, 下载积分: 积分 -1 分
没有想到我也是这个错误困扰着,谢谢分享,受益!
一周热门 更多>