MSP430 时钟设置(五)
时间:11-11
来源:互联网
点击:
4、CPU运行在DCO时钟下:
最慢的频率,我们可以运行DCO约在1MHz(这也是默认速度)。因此,我们将开始切换MCLK到DCO下。在大多数系统中,你会希望在VLO或者是晶振下运行ACLK。由于ACLK在我们目前的代码是在VLO上运行,我们会打开DCO运行。
#includemsp430g2231.h>
voidmain(void)
{
WDTCTL=WDTPW+WDTHOLD;
关闭看门狗定时器
if(CALBC1_1MHZ==0xFF||CALDCO_1MHZ==0xFF)
{
while(1);
挂起
}
BCSCTL1=CALBC1_1MHZ;
DCOCTL=CALDCO_1MHZ;
设置DCO模式
P1DIR=0x40;
配置输出
P1OUT=0;
关闭
BCSCTL3|=LFXT1S_2;
IFG1&=~OFIFG;
清除OSCFault标志
//__bis_SR_register(SCG1+SCG0);关闭DCO
BCSCTL2|=SELM_0+divM_3;
while(1)
{
P1OUT=0x40;
关闭
_delay_cycles(100);
P1OUT=0;
开启
_delay_cycles(5000);
}
}
最慢的频率,我们可以运行DCO约在1MHz(这也是默认速度)。因此,我们将开始切换MCLK到DCO下。在大多数系统中,你会希望在VLO或者是晶振下运行ACLK。由于ACLK在我们目前的代码是在VLO上运行,我们会打开DCO运行。
#includemsp430g2231.h>
voidmain(void)
{
WDTCTL=WDTPW+WDTHOLD;
关闭看门狗定时器
if(CALBC1_1MHZ==0xFF||CALDCO_1MHZ==0xFF)
{
while(1);
挂起
}
BCSCTL1=CALBC1_1MHZ;
DCOCTL=CALDCO_1MHZ;
设置DCO模式
P1DIR=0x40;
配置输出
P1OUT=0;
关闭
BCSCTL3|=LFXT1S_2;
IFG1&=~OFIFG;
清除OSCFault标志
//__bis_SR_register(SCG1+SCG0);关闭DCO
BCSCTL2|=SELM_0+divM_3;
while(1)
{
P1OUT=0x40;
关闭
_delay_cycles(100);
P1OUT=0;
开启
_delay_cycles(5000);
}
}
MSP430时钟设 相关文章:
- MSP430时钟设置及应用总结(11-25)
- Msp430时钟设计与寄存器说明(11-13)
- MSP430 时钟设置(六)(11-11)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)