打印

430定时器捕获比较不解

[复制链接]
1656|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chenyu988|  楼主 | 2012-11-8 15:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
chenyu988|  楼主 | 2012-11-9 08:13 | 只看该作者
晕没人知道吗,还是我问的太小白了!

使用特权

评论回复
板凳
cuiyong0709| | 2012-11-10 11:37 | 只看该作者
捕获是需要设置管脚的,拿MSP430F149来说,如果我想用TA的CCR2做捕获,由DATASHEET上可知,捕获输入引脚为P1.3,所以程序设计如下:
void TACCR2_Init(void)
{
    P1SEL |= BIT3;
    P1DIR &= ~BIT3;                         //TACCR2捕获引脚P1.3
   
    TACCTL2 = CCIE + CM_1+ SCS + CAP;       //对应CCR2使能,上升沿同步捕获
    TACTL |= TASSEL_1 + MC_2 + TACLR + TAIE;//时钟源选择ACLK,连续数模式,清计数器
}
中断服务程序为:
#pragma vector = TIMERA1_VECTOR  
__interrupt void TIMERA1_ISR(void)
{
    switch(TAIV)                                             //TA中断向量查询
    {
        case 4:                                             //TCCR2捕获中断
               if (TACCTL2 & CM0)                           //上升沿捕获
              {                     
              }
               
              if (TACCTL2 & CM1)                             //下降沿捕获
              {                        
              }
        break;
      
        case 10:                                            //是溢出中断   
        break;
         
        default:
        break;
    }
}
这是我昨天调试通过的

使用特权

评论回复
地板
chenyu988|  楼主 | 2012-11-10 18:31 | 只看该作者
3# cuiyong0709
只是设置哪个管脚作为输入捕获功能,并不能设置具体捕获哪个管脚的脉冲吧

使用特权

评论回复
5
cuiyong0709| | 2012-11-12 15:41 | 只看该作者
是啊,捕获输入的引脚是固定的,配置一下就OK了

使用特权

评论回复
6
lasbell2012| | 2012-11-15 20:16 | 只看该作者
3楼正解啊,很详细

使用特权

评论回复
7
江苏州| | 2013-8-4 20:20 | 只看该作者
求教。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

47

主题

1108

帖子

14

粉丝