微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 51单片机中定时器的小程序

51单片机中定时器的小程序

时间:03-04 来源:互联网 点击:

今天我开始了对51中的定时器进行了学习,并写了一个小程序。

#i nclude

sbit P0_1=P0^1; //定义位变量

/*********************************************************

* 延时子程序

* 16个循环为1秒

*

**********************************************************/

void Delay(count)

{

int i;

while(--count != 0)

{

for(i = 0; i 125; i++); // ";" 表示空语句,CPU空转。

} // i 从0加到125,在12M晶体下CPU大概耗时1毫秒

}

/*********************************************************

定时器中断子程序

************************************************************/

void time0_server_(void) interrupt 2

{static time0_server_count;

time0_server_count++;

if(time0_server_count==16)

{P0_1=~P0_1;

time0_server_count=0;

}

TF0=0;

Delay(20);

}

main()

{ TH0=0x0B;

TL0=0xDC;

P0_1=0;

EA=1;

ET0=1;

TR0=1;

while(1);

}

该程序主要是用来了解定时器的运行规律,并对他进行必要的应用。

通过对其进行实验,我大致的对其有了一些了解,其主要用途有定时,记数,中断。等等。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top