004-定时器的使用

定时器的使用

  • 功能:实现定时器的使用

方案一:

#include<reg52.h>

sbit LED = P2^0;

void main()
{
	unsigned char cnt = 0;

	TMOD = 0x01;	//设置定时器工作方式为一
	TH0 = 0xB1;	//晶振频率12Mhz,设置定时20ms
	TL0 = 0xE0;
	TR0 = 1;	//启动定时器
	 
	while(1)
	{
		if(TF0 == 1)	//监测是否溢出,为1溢出
		{
			TF0 = 0;	//监测复位
			TH0 = 0xB1;	//重置定时		
			TL0 = 0xE0;
			cnt++;		//20ms计数一次,50次为1s
			if(cnt == 50)	//1s时间到
			{
				cnt = 0;
				LED = ~LED;	//小灯状态改变一次
			}
		}							
	}
}

 

方案二:

#include<reg52.h>

sbit LED = P2^0;

void main()
{
	unsigned char cnt = 0;

	TMOD = 0x10;	//设置定时器工作方式
	TH1 = 0xB1;	//晶振频率12Mhz,设置定时20ms
	TL1 = 0xE0;
	TR1 = 1;	//启动定时器
	 
	while(1)
	{
		if(TF1 == 1)	        //监测是否溢出,为1溢出
		{
			TF1 = 0;	//监测复位
			TH1 = 0xB1;	//重置定时		
			TL1 = 0xE0;
			cnt++;		//20ms计数一次,50次为1s
			if(cnt == 50)	//1s时间到
			{
				cnt = 0;
				LED = ~LED;	//小灯状态改变一次
			}
		}							
	}
}
posted @ 2021-01-31 13:00  shihao_Yang  阅读(158)  评论(0编辑  收藏  举报