标题:
关于STC89C52单片机的EEPROM扇区问题
[打印本页]
作者:
33943417
时间:
2021-1-21 08:48
标题:
关于STC89C52单片机的EEPROM扇区问题
请教,关于STC89C52的EEPROM扇区问题,根据数据手册,该型有10个 扇区,每扇区512字节,第一扇区起始地址0X2000,结束地址0X21FF。程序
将1扇区的512个字节分别写入0~511,然后验证其中一个字节,或前几个字节都正确,验证0X20FF处为255正确,问题是验证0X2100处不是256,验证该扇区最后一个字节0X21FF处也不是511。请问为何?
下面是部分内容
void main()//
{
WORD i;//
P1=0xfe;//
Delay(10);
IapEraseSector(0x2000);//清除扇区
for(i=0;i<512;i++)
{
if(IapReadByte(0x2000+i)==0xff//清除完毕后,每个字节都应是0XFF
P1=0xfc;
}
Delay(10);
for(i=0;i<512;i++)
{
IapProgramByte((0x2000+i),i);//该扇区512字节地址,分别写入0~511
}
for(i=0;i<512;i++)
{
if(IapReadByte(0x21ff)==511)//第0x21ff处应为511,为真则P1前三个灯亮
P1=0xf8;//
}
while(1)
;
}
作者:
csmyldl
时间:
2021-1-21 09:53
请问一个字节能写入256以上的数据吗?
作者:
人人学会单片机
时间:
2021-1-21 10:34
存储值的范围 只能是 0~255
作者:
张天师
时间:
2021-1-21 12:53
一个字节的数值范围0-255,超出则溢出了。
作者:
33943417
时间:
2021-1-21 12:56
谢谢提醒,溢出了。应该是255才对
作者:
51mcu学习
时间:
2021-1-25 15:54
2的8次方0-255
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1