本帖最后由 szkeinew 于 2020-4-18 09:20 编辑
经常用的话,当然写一个自动计数函数就可以了。例如timer2,初始值化为
void TIMER2_INIT(uchar sysFreq,uint timingValue){
uint timer2_timing = 65535-(sysFreq*timingValue);//sysFreq:系统运行频率。timingValue:定时ms数,如1ms就是1000
TMCON = 0X04; //计时
RCAP2H = timer2_timing/256;
RCAP2L = timer2_timing%256;
}
配合下面函数,随时开启及关闭。
void TIMER2_EN(bit en){
en ?(T2CON |= 0X04):(T2CON &= 0XFB);
}
|