定时器中断貌似只能进一次中。

2019-03-24 13:27发布

不知有人弄过定时器,计数器,就像下面以下面一样,我用led灯测的时候,就是在看出
进不去count++后面的程序,看样子就是只进了一次中断,
不知哪位研究过的给想个办法,我这弄了半天都不行;
  为啥只进一次中断是那块不行啊,

*void TimerA_init(void)
{
        CCTL0|= CCIE;  //设置捕获/比较控制寄存器,CCIE=0x0010,使能捕获比较中断
        CCR0 =7200;  //设置捕获/比较寄存器,初始值为12000,对于ACLK时钟频率为12khz的频率,相当于1s
        TA0CTL = TASSEL_2+MC_1; // 设置定时器A控制寄存器,TA0CTL = MC_1;

         
}
#pragma vecto

#pragma vector=TIMER0_A0_VECTOR//固定的格式
__interrupt void Timer_A (void) //定时器A的CC0中断处理程序 必须是没有返回值的
{     
        static uchar count = 0;
CCR0=7200;
        count++;
         
if (count == 200)   
{   
  count = 0;
  change_page++;  //换页
               
  if (change_page == 10)
   change_page = 0;
}
               
  
            

} 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
3条回答
yatoo
2019-03-24 20:40
你led怎么测的呢,没有看到置位啊

定时器的中断标志位需要手动清除吧,或者你调试的时候 可以下断点看一下究竟进入到中断没

一周热门 更多>

相关问题

    相关文章