微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > CC2530 定时器1 Modulo模式中断问题

CC2530 定时器1 Modulo模式中断问题

时间:10-02 整理:3721RD 点击:

TI工程师你好!

   我现在在使用cc2530定时器1 Modulo 模式中断出现进不了中断问题。

   1、我的定时器1中断初始化如下:

void timer1_init(void)

  RLED = 1 ;
  T1CTL |= 0x02 ;            //1分频,模模式,从0计数到T1CC0
 
  T1CC0L = 0xc4 ;
  T1CC0H = 0x09 ; 
 
  TIMIF |= 0x40;             //設定Timer1溢出中斷使能
  IRCON &= ~0x02;            //清除Timer1中斷標記
  IEN1 |= 0x02;              //设定Timer1中断使能
  IEN0 |= 0x80;              //设定总中断使能
}

2、定时器1模模式中断代码如下:

#pragma vector = T1_VECTOR
__interrupt void T1_IRQ(void)
{  
   if(++count1>=1)                                              
   {   
      RLED  =  !RLED  ;         //LED闪烁
      count1 =  0  ;        
   }   
  IRCON  &=  ~0x02  ;

}

3、在初始化代码中,当我把T1CTL寄存器 T1CTL |= 0x01 时,可以正常进入中断。

请专家指点其中原因,谢谢!

我也发现使用模模式进不去中断,是不是系统有BUG

我也遇到了同样的问题,搞了半天,定时器1和定时器3都试过了,不行的……

TIMIF |= 0x40; 这句不是必要的

加上这句试试:

T1CCTL0 ^= 0x04;           //设置捕获比较通道0为比较模式

加一句:

T1CCTL0 |= 0x44;

就可以了,我也是一开始调试半天发现没有进中断,加上这一句设置就可以了。将T1CCTL0.IM置1,T1CCTL0.MODE置1

不明白为什么要设置T1CCTL0的值?选择比较模式和捕获模式有什么不一样吗?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top