关于LGT8F08A 的 FLASH擦除问题,首位数据没被擦除
void EFLASH_erase(unsigned char ucAddress){ //擦除扇区
//;Wait for completion of previous write
while(EECR & (1<<EEPE));
EEARH=(ucAddress<<1);
EEARL=0;
//Set up EFLASH erase operation enable
//EECR = E_ERASE_PAGE;
EECR=0x00;
EECR= EECR | (1<<EEPM2);
EECR= EECR & ~(1 <<EEPM1);
EECR= EECR | (1<<EEPM0);
//;Write logic one to EEMPE
EECR= EECR | (1<<EEMPE );
//;Start EEPROM Programming by setting EEPE
EECR= EECR | (1<<EEPE );
}
执行 EFLASH_erase(0x0000); 后用SWD读取FLASH数据
:10000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00
:10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0
:10005000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:10008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80
:10009000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
:1000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
:1000B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50
:1000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
:1000D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30
:1000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10
:10010000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
:10011000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF
:10012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
:10013000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF
:10014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
:10015000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF
:10016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
:10017000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F
:10018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
:10019000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F
:1001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
:1001B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F
:1001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
:1001D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F
:1001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
:1001F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F
怎么首位的数据没被擦除成功,被写成了00? 不用不知道,用了这芯片还真是觉得不少问题。
我正郁闷中了呢。
本帖最后由 LGT 于 2014-6-27 11:03 编辑
FLASH是块擦除机制,一次擦除至少是一个page, 08A一个page是256字节,也就是说,不会出现这种情况,
这种情况,可能是读FLASH或其他操作有关。 haowei029 发表于 2014-6-25 11:10
不用不知道,用了这芯片还真是觉得不少问题。
我正郁闷中了呢。
请问还有遇到哪些没有解决的问题,另外,我们之前已经将08A芯片可能的问题列出
请在使用前参考这个帖子中提供文档:http://www.amobbs.com/thread-5564492-1-1.html
如还有其他没有解决的问题,可以直接和我们联系: QQ: 41245188
LGT 发表于 2014-6-27 11:06
请问还有遇到哪些没有解决的问题,另外,我们之前已经将08A芯片可能的问题列出
请在使用前参考这个帖子中 ...
谢谢
我看看先
希望能对我的应用有帮助 LGT 发表于 2014-6-27 11:00
FLASH是块擦除机制,一次擦除至少是一个page, 08A一个page是256字节,也就是说,不会出现这种情况,
这种情 ...
08A 一个page 是256字节吗?
在编程手册16页的地方,写的是 “ FLASH空间的页面大小为 256x16。” 512字节吗? my2jia 发表于 2014-6-27 15:24
08A 一个page 是256字节吗?
在编程手册16页的地方,写的是 “ FLASH空间的页面大小为 256x16。” 512 ...
Sorry, 是256X16, 我记错成256字节了。 LGT 发表于 2014-6-27 16:10
Sorry, 是256X16, 我记错成256字节了。
好的,感谢你的回复
页:
[1]