在线时间0 小时
UID197284
ST金币0
蝴蝶豆0
注册时间2007-12-19
新手上路
- 最后登录
- 1970-1-1
|
发表于 2011-8-30 16:48:57
|
显示全部楼层
a0a.1 0b0c
RE:STM8S关于写内部EEPROM时的问题
STM8L读写EEPROM偶尔会死机
用STM8L做的仪表,用内部EEPROM保存参数;按键存储参数时执行下面这段程序。有时候会出现死机情况。调试发现,程序死在:FLASH_ProgramWord函数内。并不是每次保存参数都会发生,只是偶尔发生,不能理解。如果与使用的外设有关,我也是在执行本程序是关闭中断的啊,应该与外设无关吧
KEY_SET()
{
disableInterrupts();
IWDG_ReloadCounter();
FLASH_SetProgrammingTime(FLASH_ProgramTime_Standard);
FLASH_Unlock(FLASH_MemType_Program);
while (FLASH_GetFlagStatus(FLASH_FLAG_PUL) == RESET);
FLASH_Unlock(FLASH_MemType_Data);
while (FLASH_GetFlagStatus(FLASH_FLAG_DUL) == RESET);
FLASH_ProgramWord(0x1010+(Menu_Index |
|