首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助] 关于9s12EP100 的 ECT使用

应该在每个通道设置一个定时器溢出次数累加变量,每个变量在中断中计算出方波的时间后清零。如:

#pragma CODE_SEG NON_BANKED


void interrupt 10 ISR1(void)
{


C1CapTimeNew =TC2;


C1IntTimeNew=65536*C1TovCount + C1CapTimeNew - C1CapTimeOld ;


C1TovCount=0;


C1CapTimeOld=C1CapTimeNew;


}


void interrupt 9 ISR2(void)
{


C2CapTimeNew=TC1;


C2IntTimeNew = 65536*C2TovCount + C2CapTimeNew - C2CapTimeOld ;


C2TovCount=0;


C2CapTimeOld=C2CapTimeNew;




}


void interrupt 16 Timer_Overflow_ISR(void)
{




C1TovCount++;
C2TovCount++;
(void)TCNT;

}
#pragma CODE_SEG DEFAULT

[此贴子已经被作者于2008-12-5 16:01:38编辑过]

返回列表