你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 5546|回复: 1

请教一个关于STM8时钟切换的问题

[复制链接]

4

主题

18

回帖

0

蝴蝶豆

新手上路

最后登录
2019-3-24
发表于 2011-7-15 13:54:55 | 显示全部楼层 |阅读模式
在使用STM8S-DISCOVERY进行时钟切换时,切换HSI至HSE OK;
但由HSI切换至LSI 失败,目前仍不清楚原因。
两种切换的代码如下:
  /* Switch current clock to external high speed clock */
while(CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO,
                              CLK_SOURCE_HSE,
                              DISABLE,
                              CLK_CURRENTCLOCKSTATE_DISABLE) == ERROR);
经调试,结果OK.
  /* Switch current clock to inner low speed clock */
 CLK_LSICmd(ENABLE);
  while(CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO,
                          CLK_SOURCE_LSI,
                          DISABLE,
                          CLK_CURRENTCLOCKSTATE_DISABLE) == ERROR);
调试结果不成功,上电复位后时钟一直处于复位时钟模式(HSI/8),不能切换至LSI。
请教各位大侠,先谢谢了!
回复

使用道具 举报

11

主题

57

回帖

0

蝴蝶豆

中级会员

最后登录
1970-1-1
发表于 2011-7-19 23:51:20 | 显示全部楼层

RE:请教一个关于STM8时钟切换的问题

不管是HSI,HSE,LSI,使用前一定要确定clock已经稳定,
比如系统要用HSI,要用:
while( !CLK_GetFlagStatus(CLK_FLAG_HSIRDY)){}
去判断HSI是不是已经ready,
同理,在switch clock之前要侦测要选择的clock是不是ready,
回复 支持 反对

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版