請(qǐng)教:想自己用stc89c52寫個(gè)小程序 按下P1^0口開關(guān)后P0^0口的燈亮起,延時(shí)10秒后P0^1口的燈常亮,在延時(shí)過程中和延時(shí)后只要按下P1^1都可以隨時(shí)中斷程序從頭重新執(zhí)行。以下是自己寫的總是有錯(cuò)越改越亂,求高人給該一下或幫忙寫個(gè)參考參考,最好每一條語句給解釋一下,謝謝了!
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uint aa;
sbit s1=P1^0;
sbit s2=P1^1;
sbit d=P1^7;
void init()
{
TMOD=0x01;
aa=0;
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
EA=1;
ET0=1;
}
void main ()
{
init();
d=0;
while(1)
{
if(s1==0)
{
TR0=1;
P0=0xfe;
}
if(aa==200)
{
aa=0;
P0=0xfd;
}
}
}
void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
aa++;
if(s2==0)
{
aa=0;
P0=0xff;
}
}
在S2==0 時(shí)關(guān)閉 定時(shí)器
歡迎光臨 (http://www.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |