MSP430F5438时钟系统
扫描二维码
随时随地手机看文章
1、概述
Unified clock system(ucs)统一时钟系统。MSP430F5438有5个时钟源:XT1,XT2,REFCLO,VLCLO,DCO.
外部LF(XT1一般为32.768K),可以接时钟晶振,也可接4M-32M的外部时钟源。XT1可作为锁频环的参考时钟源。
HF(XT2一般为8M),晶振连接引脚为P5.2,P5.3,使用此晶振时要打开这两个引脚的第二功能。XT2可作为锁频环的参考时钟源。
从时钟系统模块可得到三种时钟信号:MCLK,SMCLK,ACLK。P11.0-P11.2第二功能对于时钟输出。
2、使用方法概述
1、设置接晶振的引脚为第二功能。
2、设置寄存器打开寄存器,配置匹配电容
3、检测晶振起振
4、配置分频系数,配置驱动电流。
3、实例
1 void MCU_Init(void)
2 {
3 WDTCTL = WDTPW+WDTHOLD; // Stop WDT
4 P11DIR |= 0x07; // ACLK, MCLK, SMCLK set out to pins
5 P11SEL |= 0x07; // P11.0,1,2 for debugging purposes.
6 __bis_SR_register(SCG0); // Disable the FLL control loop +OSCOFF
7
8 // Initialize LFXT1 ,XT2
9 P5SEL |= 0x0C; // Port select XT2
10 P7SEL |= 0x03; // Port select XT1
11
12 UCSCTL6 &= ~(XT1OFF + XT2OFF); // Set XT1 & XT2 On
13 UCSCTL6 |= XCAP_3; // Internal load cap
14
15 // Loop until XT1,XT2 & DCO fault flag is cleared
16 do
17 {
18 UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + XT1HFOFFG + DCOFFG);
19 // Clear XT2,XT1,DCO fault flags
20 SFRIFG1 &= ~OFIFG; // Clear fault flags
21 }while (SFRIFG1&OFIFG); // Test oscillator fault flag
22
23 UCSCTL6 &= ~XT2DRIVE1; // Decrease XT2 Drive according to
24 // expected frequency
25 UCSCTL5 |= DIVS_1; // SMCLK/2=8Mhz
26 UCSCTL4 |= SELS_5 + SELM_5; // SMCLK=MCLK=XT2=16Mhz
27 }