MSP430F169用定时器TimerA实现闪烁灯

时间:2021-03-31 19:24:44   收藏:0   阅读:24

MSP430F169用定时器TimerA实现闪烁灯

#include <msp430f169.h>

int main(void)
{
    WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT

    P6DIR |= 0x01;                            // P6.0 output

    TACCTL0 = CCIE;                           // CCR0 interrupt enabled
    TACCR0 = 25000;

    volatile unsigned int i;
    do
    {
        IFG1 &= ~OFIFG;                         // Clear OSCFault flag
        for (i = 0xFF; i > 0; i--)
            ;                                   // Time for flag to set
     }while((IFG1 & OFIFG));

    TACTL = TASSEL_1 + MC_2;                  // SMCLK, contmode

    _EINT();                                  // enable GIE interrupt
    LPM0;                                     // Enter LPM0
}

// Timer A0 interrupt service routine
#pragma vector=TIMERA0_VECTOR
__interrupt void TimerA_ISR(void)
{
    P6OUT ^= 0x01;                            // Toggle P6.0
    TACCR0 += 25000;                          // Add Offset to CCR0
}

原文:https://www.cnblogs.com/guochaoxxl/p/14602499.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!