在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > MSP430F149 定時器

            MSP430F149 定時器

            作者: 時間:2016-12-02 來源:網(wǎng)絡 收藏


            對定時時間的說明:

            當TASSEL_1時,選ACLK = 32.768KHZ,此時根據(jù)選取不同的TACCR0來實現(xiàn)不同的延時,

            當TASSEL_2時,選SMCLK = DCO 時,~~~~~~~~~~~~~~~~~~~~~

            選SMCLK = XT2時,~~~~~~~~~~~~~~~~

            關(guān)鍵語句:

            TACTL = TASSEL_X + MC_1;

            TACCR0 = ~~~~~~~;

            TACCTL0 = CCIE;

            (3)、利用定時器A的比較模式,及輸出模式4和連續(xù)計數(shù)模式可實現(xiàn)同時實現(xiàn)4個獨立的定時間隔,或4種不同的頻率輸出。

            在實驗的過程中,同時驅(qū)動數(shù)碼管的4個段。

            在比較模式下主要區(qū)分TACCR0 TACCR1 TACCR2 及TAIFG,的中斷向量及入口地址,及輸出模式(共8種)



            其程序如下:

            #include

            typedef unsigned char uchar;
            typedef unsigned int uint;
            uchar flag=0;
            uchar table[] = {0x18,0x7e,0x51,0x52,0x36,0x92,0x90,0x5E,0x10,0x12}; //對應0---9的共陽極碼
            void main(void)
            {
            WDTCTL = WDTPW + WDTHOLD; // Stop WDT
            //BCSCTL1 |= XT2OFF;
            //BCSCTL2 |= SELS + DIVS_3;
            TACCTL0 = OUTMOD_4 +CCIE ; //Enable interrupt
            TACCTL1 = OUTMOD_4 +CCIE ;
            TACCTL2 = OUTMOD_4 +CCIE ;

            TACCR1 = 0X8000;
            TACCR2 = 0X2000;
            TACCR0 = 0XF000;
            P3DIR |= BIT6 + BIT7; // P3.4 output
            P3OUT |= BIT6 + BIT7;
            P4DIR = 0XFF;
            P4OUT = 0XFF;
            TACTL = TASSEL_2 + MC_2 + TAIE; // SMCLK, contmode, interrupt
            _BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt

            }
            /**/
            // Timer_A3 Interrupt Vector (TAIV) handler
            #pragma vector=TIMERA1_VECTOR
            __interrupt void Timer_A(void)
            {
            switch( TAIV )
            {
            case 2: P4OUT ^= BIT5; TACCR1 += 0X8000;break; // CCR1 not used
            case 4: P4OUT ^= BIT3;TACCR2 += 0X2000;break; // CCR2 not used
            case 10: flag++;
            if(flag==12){P4OUT ^= BIT2; flag = 0; } // overflow
            break;//flag++;
            }
            }

            /**/
            // Timer A0 interrupt service routine
            #pragma vector=TIMERA0_VECTOR
            __interrupt void Timer0_A (void)
            {
            P4OUT ^= BIT4; // Toggle P3.4
            TACCR0 += 0XF000;
            }

            上一頁 1 2 下一頁

            關(guān)鍵詞: MSP430F149定時

            評論


            技術(shù)專區(qū)

            關(guān)閉