新手求助关于仿真

crj1986   2010-12-8 15:55 楼主
本人刚接触ST单片机,很多不明白的地方,,,打击到不行。
最近遇到问题,实在头痛,上来求助啦!!!
用ST-link仿真,在读写EEPROM时,可正常操作。。。

可把程序down到MCU里上电运行时,不能正常写EEPROM了(可以读出来。)。。。哭啊~~为什么啊!就是,当我有新数据需要存储时,没法写进去了,后来在写EEPROM程序里加了个点亮LED的动作,居然发现根本就没进入写EEPROM的程序段。。我再次深深的哭死。。。不过用ST-LINK仿真一直很正常啊。。可以写的。

回复评论 (5)

"可把程序down到MCU里上电运行时,不能正常写EEPROM了",因为Debug时,调试已经对EEPROM进行了解锁,所以你的程序可以读写EEPROM,但是MCU自动上电运行时,没有进行解锁,所以你的程序中如果需要对EEPROM进行写操作,需要运行解锁代码,参考如下:

#define FLASH_RASS_KEY1 ((unsigned char)0x56)  //First RASS key
#define FLASH_RASS_KEY2 ((unsigned char)0xAE)  // Second RASS key

void EEPROM_Unlock(void)
{
        FLASH_DUKR = FLASH_RASS_KEY2; // Warning: keys are reversed on data memory!
        FLASH_DUKR = FLASH_RASS_KEY1;               
}
点赞  2010-12-9 16:55
                                 刚开始学碰到这样的问题很正常,慢慢就会变熟练的
点赞  2010-12-9 18:42
                                 以前刚接触单片机时和楼主一样崩溃
点赞  2010-12-9 21:37
                                 努力,me too
点赞  2010-12-9 21:45
额,今天上来发现有消息说俺没结贴。。。初次来这里,不知道规矩。。

问题早已经解决了,是俺自己的问题,不关STM8的事啊。。呵呵。

因为数据是由另外单片机发送的,存在两MCU上电同步问题(两MCU上电延时不同。。),在上电时两MCU都做了下小延时就正常了~~呵呵~~
点赞  2011-1-11 19:58
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复