本帖最后由 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);
- }
|