智能车制作

标题: 输入捕捉中断问题 [打印本页]

作者: zhengz    时间: 2009-9-8 16:48
标题: 输入捕捉中断问题
我的程序如下,发现单步执行的时候,中断可以循环发生,全速执行的时候,中断只能发生一次 ,好奇怪啊,哪位高手可以帮我解释一下 ,
#include <hidef.h>  
#include <mc9s12hy64.h>
#include "derivative.h"
void timer0_init();

unsigned int c=0;
void main(void)
{
DisableInterrupts;
   timer0_init();
  EnableInterrupts;
  TIM0_TSCR1_TEN = 1;  //使能计数器
}
           
void timer0_init(void)//输入捕捉计数器初始化
{
TIM0_TSCR2_PR=0x07;//时钟设为八分之一
TIM0_TIOS =0xEF;//设T0_4为输入捕捉
TIM0_TCTL3=0x02; //下降沿捕捉
TIM0_TIE=0x10;//允许中断
TIM0_TSCR1_TEN = 1;  //使能计数器
TIM0_TSCR1_TFFCA=1 ;
TIM0_TFLG1_C4F=1;
TIM0_TSCR2_TOI=0;
}

#pragma CODE_SEG __NEAR_SEG NON_BANKED//定时器中断

interrupt 12 void timer0overflow(void)
{
   TIM0_TC4;
    c++;   
    }
#pragma CODE_SEG DEFAULT
作者: whut_wj    时间: 2009-9-10 00:28
清标志位?
作者: lqpm999    时间: 2010-11-21 10:52
主函数最后加一个for循环试试!!
作者: liuruipo    时间: 2011-3-11 20:28
进入中断要清零标志位




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2