打印
[STM8]

stm8 lsi 时钟 起不来啊 怎么配置

[复制链接]
5935|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chineser|  楼主 | 2009-11-26 14:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式


   CLK_ICKR=0x08;

/* Configure clock prescaler */


CLK_CKDIVR = 0x01;
/*
分频时钟源
*/


/* To select external source by automtic switch */


CLK_ICKR |= 0x10;
/*
使能转化 */


CLK_SWR
= 0xD2;

/*
时钟源选择 选择HSE*/

              

while (!(CLK_ICKR & 0x10));
/*
等待直到转换完成 */

              
              

if (CLK_CMSR != 0xD4)
检测是不是配置的时钟源



while(1);
沙发
chineser|  楼主 | 2009-11-27 10:16 | 只看该作者
香主 帮忙啊

使用特权

评论回复
板凳
chineser|  楼主 | 2009-11-27 14:46 | 只看该作者
没人吗

使用特权

评论回复
地板
北辰风^ω^| | 2009-11-27 14:52 | 只看该作者
有啊

使用特权

评论回复
5
chrron| | 2009-11-28 18:21 | 只看该作者
先使能时钟切换,再切换,不过你用LSI的干什么?

使用特权

评论回复
6
mcu5i51| | 2010-5-8 09:40 | 只看该作者
void CLK_LSI(void)
{
        CLK_SWCR |= 0x02;                                                        /* 使能转化 */       
        CLK_SWR        = 0xD2;                                                                /* 时钟源选择 选择LSE*/
        while (!(CLK_SWCR & 0x08));                /* 等待直到转换完成 */       
        CLK_CKDIVR = 0;
        CLK_ICKR &= ~BIT(0);
}
void CLK_HSI(void)
{
        CLK_SWCR |= 0x02;                                                        /* 使能转化 */       
        CLK_SWR        = 0xE1;                                                                /* 时钟源选择 选择HSE*/
        while (!(CLK_SWCR & 0x08));                /* 等待直到转换完成 */       
        CLK_CKDIVR = 0;
        CLK_ICKR &= ~BIT(3);
}

注意用LSI要修改选项字节

使用特权

评论回复
7
grant_jx| | 2010-5-8 09:49 | 只看该作者
如果需要将LSI作为主时钟源是需要先打开Option Bytes的LSI_EN选项的。

使用特权

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

本版积分规则

93

主题

261

帖子

0

粉丝