用EEPROM例程,开机读的第一个数始终是00
用的例程,开机读的每一个数始终是00,不管哪个地址,同一地址,每二次读就正常,为什么会这样??大神解释一下将程序修改一下试试:
读:
_nop_();
_nop_();
IAP_TRIG = 0x5a; //写触发命令(0x5a)
_nop_();
_nop_();
IAP_TRIG = 0xa5; //写触发命令(0xa5)
_nop_(); //
_nop_();
IapIdle(); //关闭IAP功能
写:
_nop_();
_nop_();
IAP_TRIG = 0x5a; //写触发命令(0x5a)
_nop_();
_nop_();
IAP_TRIG = 0xa5; //写触发命令(0xa5)
delay(5);
IapIdle(); //关闭IAP功能
擦除:
_nop_();
_nop_();
IAP_TRIG = 0x5a; //写触发命令(0x5a)
_nop_();
_nop_();
IAP_TRIG = 0xa5; //写触发命令(0xa5)
delay(20);
IapIdle(); //关闭IAP功能 可以了,就是你说的这个问题,谢谢
嗯。这个延时是象征性的,应该可以缩短,希望有官方技术数据给予支持
页:
[1]