中断
定时器/计时器是51单片机最基本的功能器件,熟练掌握其编写方法至关重要;
#include <reg51.h>
#include <stdio.h>
unsigned char n=0,f=0,s=0;
void main()
{
TMOD=0X61;
TH0=(65536-9216)/256;
TL0=(65536-9216)%256;初始化定时器
TH1=156;
TL1=156;
IT0=1;
EX0=1;
EA=1;
T1=0;
while(1)P1=s;
}
void Timer0() interrupt 1
{
T1=1;
TH0=(65536-9216)/256;
TL0=(65536-9216)%256;
T1=0;
}
void Timer1() interrupt 3
{
s++;
}
void interrupt1(void) interrupt 0
{
if(f==0){
TR1=1;TR0=1;
ET1=1;ET0=1;
f=1;
}
else if(f==1)
{
TR1=0;TR0=0;
ET1=0;ET0=0;
f=0;
}
}