打印

新华龙单片机时钟初始化

[复制链接]
1713|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
赵星宇|  楼主 | 2013-5-29 14:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近使用新华龙的C8051F920单片机,使用内部系统时钟,初始化如下:
void Oscillator_Init()
{
    int i;
        FLSCL     = 0x40;
    REG0CN   |= 0x10;  // Enable OSCBIAS bit in voltage regulator
    for (i = 0; i <14; i++);  // Wait 4us before enabling oscillator
    OSCICN   |= 0x8F;
    CLKSEL    = 0x00;
}
现在出现一个问题,程序有时候会在时钟初始化的时候停在for语句那点,如果将i<14改为i<5之后又能继续运行,请教各位大神,谁知道是为什么?可不可以不要for (i = 0; i <14; i++);  这条语句?

相关帖子

沙发
ayb_ice| | 2013-5-29 14:48 | 只看该作者
只能改大,不建议改小,如果有问题应该是其它地方引起的,比如WDT超时了

使用特权

评论回复
板凳
zwp0822| | 2013-5-29 14:58 | 只看该作者
应该是没关看门狗,for语句是等待时钟稳定的,不能删!

使用特权

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

本版积分规则

14

主题

80

帖子

1

粉丝