一个定时器,用来计时,外部中断2,捕捉输入脉冲。
//全局变量,宏
#define TC 0x******** //能够将定时器配置为1S的常数
int32 fq; //频率,单位HZ
int32 pls; //实时脉冲个数
/*********************************
*实时监控引脚的脉冲频率
*细腻度由TC决定(多长时间频率才可能变化一次)
*
**********************************/
int main()
{
fq=0;
InitTimer(TC);//配置定时器,1秒定时
EnableTimerInterrupt();
EnableExtInterrupt();
while(1)
{
deylay();
printf("当前频率:%dhz\n",fq);
}
}
//定时中断服务
void TimerPro()
{
...
fq=pls;
pls=0;
...
}
//外中断(脉冲监控)处理
void ExtIntPro()
{
...
pls++;
...
}
复制代码