void time_init_1s()
{
TA1CCTL0 = CCIE; // CCR0 interrupt enabled
TA1CCR0 = 16383;
TA1CTL = TASSEL_1 + MC_1 + TACLR; // ACLK, Up to CCR0 , clear TAR
}
//中断服务程序
#pragma vector=TIMER1_A0_VECTOR
__interrupt void TIMER1_A0_ISR(void)
{
P5OUT ^=BIT4;
TA1CCR0 += 16383; // Add Offset to CCR0
}
时钟设置:
void clk_init()
{
//ACLK = REFO = 32kHz, MCLK = SMCLK = 25MHz
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
UCSCTL3 |= SELREF_2; // Set DCO FLL reference = REFO
UCSCTL4 |= SELA_2; // Set ACLK = REFO
__bis_SR_register(SCG0); // Disable the FLL control loop
UCSCTL0 = 0x000