打印
[STM8]

询问 电源切换

[复制链接]
1662|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mmxydq|  楼主 | 2011-4-7 11:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
进入低功耗前设置LSI为电源。halt前如下:
CLK_LSICmd(ENABLE);
while(((CLK->ICKCR)&0x10)!= 0x10);//等待目标时钟准备好
CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_LSI);
CLK_SYSCLKSourceSwitchCmd(ENABLE);
while (((CLK->SWCR)& 0x01)==0x01);//切换已好
while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_LSI);//确认转换完成
// CLK_SYSCLKSourceSwitchCmd(DISABLE);
// while (((CLK->SWCR)& 0x01)==0x01);//等待时钟切换完成
CLK_PeripheralClockConfig(CLK_Peripheral_TIM4, DISABLE);
CLK_HSICmd(DISABLE);
PWR->CSR2 = 0x2;
但是run了老是出问题,提示SWIM ERROR什么的,去掉上面这些后,正常。断点一步一步调试,在这句CLK_SYSCLKSourceSwitchCmd(ENABLE);出现run中出现的错误。不知道怎么回事,望指教,感激不尽。
沙发
barboon| | 2011-4-8 15:16 | 只看该作者
那是因为你在进入halt前把时钟从HSI切掉了,因为SWIM通信要用到HSI,一切掉通信连不上了SWIM ERROR很正常,不要管调试,直接跑,这代码没问题的。

使用特权

评论回复
板凳
cjhk| | 2013-2-10 18:32 | 只看该作者
呵呵  顶一个   呵呵

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

42

帖子

1

粉丝