蓝桥杯单片机stc15f2k60s2 中断函数代码模板注释

用到哪些寄存器?

  • 中断使能寄存器//                                              EA=1(总使能开),ET0=1(T0中断允许)
  •  定时器/计数器控制寄存器TCON//                   TH0TL0设定值确定时间间隔(方法下面讲)                                                                                                                           TR0=1(定时器0启动),TF0中断函 数里面会用到
  • 定时器 / 计数器工作模式寄存器TMOD //         TMOD=0x01(TH0,TL0全用

代码模板

void main()
{
	EA=1;//总使能开
	TMOD=0x01;//十六位不可重装载模式,TH0,TL0全用
 
	TH0=0xfc;//设定中断时间间隔,后面会讲
	TL0=0x67;
 
	ET0=1;//T0中断允许
	TR0=1;//启动T0

}


void InterruptTime0() interrupt 1
{

	TH0=0xfc;//重载
	TL0=0x67;

	//要进行的操作
}

 官方说明书中对这些寄存器的介绍

中断使能寄存器:(画出比赛用的)

蓝桥杯单片机stc15f2k60s2 中断函数代码模板注释_第1张图片

 定时器/计数器控制寄存器TCON(画出比赛用的)

 蓝桥杯单片机stc15f2k60s2 中断函数代码模板注释_第2张图片

 定时器 / 计数器工作模式寄存器TMOD

 蓝桥杯单片机stc15f2k60s2 中断函数代码模板注释_第3张图片

怎么设置定时的时间?

 技巧

TH0=(65536-想定的时间*921600)/256

TL0=(65536-想定的时间*921600)%256

另外想定的时间不能超过0.07秒

 

原理

stc15f2k60s2机器周期为12/11059200

65535时溢出

所以

(65536-要设置的数)*机器周期=要设置的时间

 

 

 

你可能感兴趣的:(蓝桥杯单片机stc15f2k60s2 中断函数代码模板注释)