-1.配置rTCFG0,设定prescaler0或prescaler1; rTCFG0=(PCLK/1000000-1);//prescaler0=100
-2.配置rTCFG1,设定Timern的分频因子;rTCFG1=0x01;//1/4
-3.配置rTCNB0,设定将被加载的TCN值;Fout(s)=[(prescaler+1)*(TCNTB+1)*divisor]/PCLK divisor是整数形式,由公式可知此时
的计时精度即为divisor us(微秒),那么TCNTBn中的数字就等于aimtime(us)/divisor,aimtime为目标定时
-4.配置TCON,使能manual位,将TCNTBn中的数据载入TCNTn中;rTCON=0x0a;//01010:无死区、自动重载、手动更新、关定时器
-5.禁止所有中断,禁止所有子中断;rINTMOD=0x0;//全为irq rINTMSK=0xffffffff;//屏蔽所有中断 rINTSUBMSK=0xffff;//屏蔽所有子中断;
-6.开时钟中断 rINTMSK=0xffffbfff;//INT_TIMER0开中断
-7.配置rTCON,自动重载,disable inverter,disable manual bit,开启timer; rTCON=0x09;//启动定时器TIMER0
-8.在main函数中将中断向量指向ISR:pISR_TIMER0=(unsigned int)Timer0ISR; pISR_TIMER0=(unsigned)timer0Handler;
-9.编写定时器中断服务程序(如void __irq Timer0ISR)
-10.在中断服务程序中清除rSRCPND,rINTPND,向相应的位写1