首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]QD2设置停止模式后,仿真状态工作正常,断开仿真器后工作不正常(急)

[求助]QD2设置停止模式后,仿真状态工作正常,断开仿真器后工作不正常(急)

如题;非常奇怪;

初始化代码如下:

SOPT1 = 0x72; //RST引脚配置为普通IO;开看门狗;允许停止模式
SPMSC1 = 0x10; //关闭LVDSE
SPMSC2 = 0x02; //停止模式3使能,清除PPDF位

进入停止模式部份代码如下

void PoweDown(void)
{
asm (stop;) ;
}

请问为什么会出现这种问题呀?

工作如何不正常?
海纳百川  有容乃大

谢谢版主热心回复;

不正常现像是这样的:

用仿真器能正常进入睡眠模式和唤醒;但断开仿真器上电后却只能进入睡眠模式,而不能唤醒;

问题已解决;

原来在CodeWarrior不支持在函数内部定义局部静态变量;

我把某一函数局部静态变量更改为全局变量,并在初始化时赋初值,问题就解决了;

这句本来是在函数内部"volatile static uchar SMAC_PROCESS";

我把它定义成全局变量,这个问题就没了;

AVR-GCC不会有这种现像,奇怪;

这只是编译器的处理方法不同。
海纳百川  有容乃大
返回列表