?? text1.c
字號:
#include<reg51.h>
#include<absacc.h>
unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0xf82,0xf8,0x80,0x90};
int keyval;
sfr key=0xB0;
sbit s4=P3^3;
sbit s3=P3^4;
sbit s2=P3^5;
sbit s1=P3^6;
sbit s0=P3^7;
sbit speaker=P3^1;
sbit relay=P2^7;
void delay(void)
{
unsigned int i;
for(i=0;i<200;i++);
}
void leddelay(void)
{
unsigned char i,j;
for (i=0;i<255;i++)
for(j=0;j<255;j++);
}
void ledflash (void)
{
P1=0xff;
leddelay();
P1=0x00;
leddelay();
}
void ledflow (void)
{
unsigned char i;
unsigned char temp;
temp=0x01;
for(i=0;i<8;i++)
{
P1=~temp;
leddelay();
temp=temp<<1;
}
}
void sound (void)
{
speaker=0;
delay();
speaker=1;
}
void relayon(void)
{
relay=0;
leddelay();
relay=1;
}
void main(void)
{
key=0xff;
P0=0xff;
P2=0xff;
EA=1;
ET0=1;
ET1=1;
TMOD=0x11;
TH0=-10000/256;
TL0=-10000%256;
TH1=-100/256;
TL1=-100/256;
TR0=1;
TR1=1;
while(1)
{ speaker=0;
if(keyval==1)
ledflash();
if(keyval==2)
ledflow();
if(keyval==3)
ledflash();
if(keyval==4)
sound();
}
}
void intserv1(void) interrupt 1 using 0
{
TR0=0;
TH0=-10000/256;
TL0=-10000%256;
TR0=1;
}
void intserv3(void) interrupt 3 using 3
{
TR1=0;
if((key&0x3c)!=0x3c)
delay();
if((key&0x3c)!=0x3c)
{
if(s0==0)
keyval=1;
if(s2==0)
keyval=2;
if(s3==0)
keyval=3;
if(s4==0)
keyval=4;
}
TR1=1;
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -