在线时间0 小时
UID199030
注册时间2010-7-10
NXP金币0
该用户从未签到
新手上路

- 积分
- 36
- 最后登录
- 1970-1-1
|
我在用mc9s12xs128输入捕捉时遇到一些问题向大家请教,我用通道0,中断都正常,但是我改成其他通道,就是进不了中断,不知道是哪里出了问题,代码如下:
void ECT1_INIT() //输入捕捉通道1初始化函数
{
TSCR1_TFFCA = 1; // 定时器标志位快速清除
TSCR1_TEN = 1; // 定时器使能位. 1=允许定时器正常工作; 0=使主定时器不起作用(包括计数器)
TIOS = 0xfd; //指定通道1为输入捕捉方式
TCTL4 = 0x01; // 设置通道1为捕捉上升沿方式
TIE = 0x02; // 允许通道1定时中断
TSCR2 = 0x07; // 预分频系数pr2-pr0:111,时钟周期为4us,
TFLG1 = 0xff; // 清除各IC/OC中断标志位
TFLG2 = 0xff; // 清除自由定时器中断标志位
}
#pragma CODE_SEG __NEAR_SEG NON_BANKED
interrupt void etc1(void)
{
if(TFLG1_C1F == 1)
TFLG1_C1F = 1;
time1 = time2;
time2 = TC1;
delaytime = time2-time1;
}
#pragma CODE_SEG DEFAULT
void main(void) {
DisableInterrupts;
ECT1_INIT();
EnableInterrupts;
for(;;) {}
}
|
|