Professional Documents
Culture Documents
Code
Code
#include<reg52.h>
#define data P1
sbit rs=P2^0;
sbit rw=P2^1;
sbit en=P2^2;
sbit rf1=P3^0;
sbit rf2=P3^1;
sbit rf3=P3^2;
sbit rf4=P3^3;
sbit rf5=P3^4;
sbit rf6=P3^5;
sbit buzer=P3^6;
sbit relay=P3^7;
sbit led1=P0^0;
sbit led2=P0^1;
sbit led3=P0^2;
sbit led4=P0^3;
sbit led5=P0^4;
sbit led6=P0^5;
buzer=1;
relay=0;
lcd_int();
lcdcmd(0x80);
msg(" TSUNAMI DETECTOR ");
while(1)
{
relay=0;
buzer=1;
if(rf1==1)
{
led1=relay=0;
lcdcmd(0xc0);
msg(" LEVEL 1 ");
buz(1);
lcdcmd(0xc0);
msg("
");
}
if(rf2==1)
{
led2=relay=0;
lcdcmd(0xc0);
msg(" LEVEL 2 ");
buz(2);
while(rf2==1);
lcdcmd(0xc0);
msg("
}
");
if(rf3==1)
{
led3=relay=0;
lcdcmd(0xc0);
msg(" LEVEL 3 ");
buz(3);
while(rf3==1);
lcdcmd(0xc0);
msg("
");
}
if(rf4==1)
{
led4=0;
lcdcmd(0xc0);
msg(" LEVEL 4 ");
relay=1;
delay1(700);
delay1(700);
delay1(700);
relay=0;
while(rf4==1);
lcdcmd(0xc0);
msg("
");
}
if(rf5==1)
{
led2=led3=led4=led1=led6= buzer=1;
led5=relay=0;
lcdcmd(0xc0);
msg(" LEVEL 5 ");
relay=1;
buzer=0;
relay=0;
buzer=1;
while(rf5==1);
lcdcmd(0xc0);
msg("
}
if(rf6==1)
{
");
led6=0;
lcdcmd(0xc0);
msg(" LEVEL 6 ");
relay=1;
while(rf6==1);
lcdcmd(0xc0);
msg("
");
}
}
void lcd_int(void)
{
lcdcmd(0x38);
lcdcmd(0x80);
lcdcmd(0x0e);
lcdcmd(0x01);
lcdcmd(0x06);
lcdcmd(0xco);
}
void msg(unsigned char *d )
{
unsigned char j;
for(j=0;d[j]!='0';j++)
lcddata(d[j]);
}
void lcdcmd(unsigned char value)
{
ldata=value;
rs=0;
rw=0;
en=1;
msdelay(800);
en=0;
return;
}
void lcddata(unsigned char value)
{
ldata=value;
rs=1;
rw=0;
en=1;
msdelay(800);
en=0;
return;
}
void msdelay(unsigned char value)
{
unsigned char i;
for(i=0;i<=value;i++);
}
void delay1(unsigned char value)
{
unsigned char i,j;
for(i=0;i<=value;i++)
for(j=0;j<=100;j++);
}
void buz(unsigned char v)
{
unsigned char i;
for(i=0;i<v;i++)
{
buzer=0;
delay1(700);
delay1(700);
delay1(700);
buzer=1;
delay1(700);
delay1(700);
}
}