古詩詞大全網 - 經典古詩 - 求單片機C語言編程p1.0,p1.1分別控制led1,led2. p3.2控制按鍵開關,求詳細C程序

求單片機C語言編程p1.0,p1.1分別控制led1,led2. p3.2控制按鍵開關,求詳細C程序

#include<reg51.h>

#define uchar unsigned char

uchar sec,min,num;

sbit led1=P1^0;

sbit led2=P1^1;

sbit key=P3^2;

bit flag;

void delay(uchar x)

{

uchar i,j;

for(i=0;i<x;i++)

for(j=0;j<120;j++);

}

void t0isr() interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

num++;

if(num>=20)

{

num=0;

sec++;

if(sec>59)

{

sec=0;

min++;

switch(min)

{

case 0:led1=0;break;

case 1:if(flag){led1=0;min=0;flag=0;}

break;

case 4:led1=1;led2=0;break;

case 8:led2=1;break;

default:break;

}

if(min>=20)min=0;

}

}

}

void ext0() interrupt 0

{

delay(30);

if(key==0)

{

while(!key);

flag=1;

sec=0;

min=0;

num=0;

led1=1;

led2=1;

}

}

main()

{

TMOD=0x01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

ET0=1;

EA=1;

EX0=1;

IT0=1;

TR0=1;

led1=0;

led2=1;

flag=0;

while(1);

}