定时器延时问题,求助!!!!!

2019-03-24 09:16发布

void TA1_Init()
{
        P2DIR &=~ BIT0;         //CAPTURE
        P2SEL |= BIT0;
        TA1CCTL1 = CAP + CCIS_0 + CM_1 + SCS+CCIE; // Capture CCIxA, pos edge, interrupt enable.
        TA1CTL = TASSEL_2 + MC_1 + ID__1; // SMCLK, up mode.
}
void TA0_Init(void)
{
        TA0CCTL0 &=~ CCIE;       //比较功能0(定时计数)开启CCIFG位中断
        TA0CTL = TACLR | TASSEL_2 | MC_1 | ID__1;
        //计数器清零,选择SMCLK作为时钟(16MHz),选用増计数模式
}
#pragma vector=TIMER1_A1_VECTOR
__interrupt void Timer1_A1 (void)
{
        //_disable_interrupts();
        TA1CCTL1 &= ~CCIFG;
        folg=~folg;
        if(folg)
        {
                if(yx==0)
                        fb_L;
                //TA1CCTL1 &= ~CM_2;
                TA1CCTL1 |= CM_1;  //捕获方式切换
        }
        else
        {
                if(yx==0)
                        fb_H;
                //TA1CCTL1 &= ~CM_1;
                TA1CCTL1 |= CM_2;  //捕获方式切换
        }
        if(yx!=0)
        {
                if(yx<179)
                {
                        TA0CCR0=time[yx]; //
                        //TA0R=0;
                        //TA0CTL|=TAIE;
                        TA0CCTL0 |= CCIE;                //TR0=1;
                }
                else
                {
                        TA0CCR0=time[180];
                        //TA0R=0;
                        //TA0CTL|=TAIE;
                        TA0CCTL0 |= CCIE;                //TR0=1;
                }
        }
        //_enable_interrupts();
}
#pragma vector=TIMER0_A0_VECTOR
__interrupt void TimerA0(void)
{
        //_disable_interrupts();
        //TA0CTL &= ~TAIFG;
        TA0CCTL0 &=~ CCIFG;
        TA0CCTL0 &=~ CCIE;
        if(folg)
                fb_L;
        else
                fb_H;
        //_enable_interrupts();
}
/********************************************************/
我想用定时器1捕获方波,当捕获到上升沿或下降延时开定时器0延时输出。起到输出方波与被采集的方波存在相位差。但是现在经过测试,发现并不能达到效果。捕获中断进去后,定时器的CCR0能被赋值,然后定时器0中断也能进去,但是延时输出的效果没有。就像没有定时一样。TA0CCR0的赋值由time[]这个数组提供,不论给TA0CCR0赋多大的值,延时效果都是一样的。

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
artj
2019-03-24 18:16
 精彩回答 2  元偷偷看……0人看过

一周热门 更多>

相关问题

    相关文章