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

[复制链接]
 楼主| 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 | 显示全部楼层
有啊
chrron 发表于 2009-11-28 18:21 | 显示全部楼层
先使能时钟切换,再切换,不过你用LSI的干什么?
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要修改选项字节
grant_jx 发表于 2010-5-8 09:49 | 显示全部楼层
如果需要将LSI作为主时钟源是需要先打开Option Bytes的LSI_EN选项的。

lsi.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

93

主题

261

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

93

主题

261

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部