⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 text1.c

📁 this is a PROGRAM FOR 80C51
💻 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;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -