?? fet430_clks_02.c
字號:
//*****************************************************************************
// MSP-FET430P430 Demo - FLL+, Output 32kHz XTAL + HF XTAL + Internal DCO
//
// Description: This program demonstrates using an external 32kHz crystal to
// supply the internal ACLK, and using a high speed crystal or resonator to
// supply SMCLK. The MLCK for the CPU is supplied by the DCO. The 32kHz
// crystal connects to pins Xin and Xout. The high frequency crystal or
// resonator connects to pins XT2in and XT2out. The DCO clock is generated
// internally and calibrated by the FLL+ from the 32kHz crystal. The
// resulting ACLK is brought out pin P1.5, SMCLK is brought out on P1.4,
// and MCLK is brought out on pin P1.1.
// ACLK = LFXT1 = 32768Hz, MCLK = SMCLK = default DCO = 32 x ACLK = 1048576Hz
// //* An external watch crystal between XIN & XOUT is required for ACLK *//
// //* External matching capacitors must be added for the high *//
// //* speed crystal or resonator as required. *//
//
// MSP430FG439
// -----------------
// /|\ | XIN|-
// | | | 32kHz
// ---|RST XOUT|-
// | |
// | |
// | XT2IN|-
// | | HF XTAL or Resonator (add capacitors)
// | XT2OUT|-
// | |
// | |
// | P1.5/ACLK|--> ACLK = 32768 Hz
// | |
// | P1.4/SMCLK|--> SMCLK = High Freq XTAL or Resonator
// | |
// | P1.1/MCLK|--> MCLK = 1048576 Hz (Default DCO)
// | |
// | |
//
// G. Morton
// Texas Instruments Inc.
// Feb 2005
// Built with IAR Embedded Workbench Version: 3.21A
//*****************************************************************************
#include <msp430xG43x.h>
void main(void)
{
volatile unsigned int i; // Use volatile to prevent removal
// by compiler optimization
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
FLL_CTL0 |= XCAP14PF; // Configure load caps
for (i = 0; i < 10000; i++); // Delay for 32 kHz crystal to
// stabilize
do
{
for (i = 0; i < 1000; i++); // Delay for osc to stabilize
IFG1 &= ~OFIFG; // Clear osc fault flag
} while(IFG1 & OFIFG); // Check to see if osc flag is set
FLL_CTL1 = SELS; // XT2 on, SMCLK = XT2CLK
P1DIR = 0x32; // Set P1.5,4,1 as outputs
P1SEL = 0x32; // Select P1.5,4,1 as clk option
while(1); // Loop in place
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -