搜索
bottom↓
回复: 2

MSP430TimerA捕获问题

[复制链接]

出0入0汤圆

发表于 2010-11-15 18:12:04 | 显示全部楼层 |阅读模式
我做一个捕获的实验,P1.2和1.3作为TA1和TA2的捕获源,(接法是外接一个按键到地),下降沿捕获,点捕获到的时候,指示灯1亮,并马上改为上升沿捕获,当捕获到的时候,指示灯2亮,指示灯1灭。
现在问题来了,只有TA1能捕获到,而TA2不能捕获到,并且不能进入TA0中断。为什么呢??
请问是我的配置错了吗??
程序如下:
#include <msp430x16x.h>
void bcs_init()
{
unsigned char i;
BCSCTL1 &= ~XT2OFF;//打开XT
do
  {
   IFG1 &= ~OFIFG;//清除振荡失效
   for(i = 0xff; i > 0; i--);//等待
  }
while((IFG1 & OFIFG) != 0);
BCSCTL2 |= SELM_2 + SELS + DIVS_3;//MCLK = SMCLK = XT2,三分频
}
void timera_init()
{
P1SEL |= BIT0 + BIT1 + BIT2;
P4DIR |= BIT0 + BIT1 + BIT2;
TACTL |= TASSEL_2 + ID_3 ;//时钟源为SMCLK再三分频
TACCTL1 |= CM_2 + SCS + CAP + CCIE;//捕获模式,同步捕获,中断打开,下降沿捕获
TACCTL2 |= CM_2 + SCS + CAP + CCIE;//捕获模式,同步捕获,中断打开,下降沿捕获
_EINT();//开总中断
}
void main()
{
WDTCTL = WDTPW + WDTHOLD;//关狗
bcs_init();
timera_init();
    while(1);
}
#pragma vector = TIMERA0_VECTOR
__interrupt void timera0_vec()
{
P4OUT ^= BIT0;
}
#pragma vector = TIMERA1_VECTOR
__interrupt void timera1_vec()
{
switch(TAIV)
    {
  case 2: if(TACCTL1 & CM_2)//上升沿
    {
     TACCTL1 = (CCTL1 & (~CM_2) | CM_1);//改成下降沿
     P4OUT ^= BIT1;//LDE翻转
     CCTL1 &= ~CCIFG;//清除中断标志
    }
    else if(TACCTL1 & CM_1)//下降沿
    {
     P4OUT ^= BIT1;//LDE翻转
     TACCTL1 = (CCTL1 &(~CM_1) | CM_2);//改成上升沿
     P4OUT ^= BIT2;//LDE翻转
     CCTL1 &= ~CCIFG;//清除中断标志
    }
    break;
  case 4: if(TACCTL2 & CM_2)//上升沿
    {
     TACCTL2 = (CCTL2 & (~CM_2) | CM_1);//改成下降沿
     P4OUT ^= BIT1;//LDE翻转
     CCTL2 &= ~CCIFG;//清除中断标志
    }
    else if(TACCTL2 & CM_1)//下降沿
    {
     P4OUT ^= BIT1;//LDE翻转
     TACCTL2 = (CCTL2 &(~CM_1) | CM_2);//改成下降沿
     P4OUT ^= BIT2;//LDE翻转
     CCTL2 &= ~CCIFG;//清除中断标志
    }
    break;
        case 10: break;
    }
}

分享本文到:

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2013-5-31 14:41:09 | 显示全部楼层
类似的问题。我打算捕获上升沿到下降沿间的脉宽。搬了段课本的程序,不知道怎么的老是进入CASE10定时器溢出的状态。迷惑中。。。

出0入0汤圆

发表于 2013-6-7 10:10:57 | 显示全部楼层
我也是啊
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-22 23:11

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表