Professional Documents
Culture Documents
Code
Code
h>
sbit rs=P3^6;
sbit en=P3^7;
sbit t0=P2^0;
sbit t1=P2^1;
sbit wr=P2^2;
sbit rd=P2^3;
sbit light=P3^2;
sbit temp=P3^3;
sbit ac=P2^7;
sbit bulb=P2^6;
sbit led=P3^4;
sbit key=P3^5;
sbit irin=P1^6;
sbit irout=P2^4;
sbit explosive=P1^7;
sbit track1=P1^0;
sbit track2=P1^1;
sbit track3=P1^2;
sbit track4=P1^3;
sbit track5=P1^4;
sbit track6=P1^5;
sbit track7=P3^1;
sbit track8=P2^5;
sbit ACH0=P1^0;
sbit ACH1=P1^1;
void del_2ms()
{
unsigned char i;
for(i=0;i<=250;i++);
}
void del_10ms()
{
unsigned char i;
for(i=0;i<5;i++)
{
del_2ms();
}
}
/*
void del_50ms()
{
unsigned char i;
for(i=0;i<5;i++)
{
del_10ms();
}
*/
void del_100ms()
{
unsigned char i;
for(i=0;i<10;i++)
{
del_10ms();
}
void del_500ms()
{
unsigned char i;
for(i=0;i<5;i++)
{
del_100ms();
}
void del_1sec()
{
unsigned char i;
for(i=0;i<10;i++)
{
del_100ms();
}
}
/*
void del_1min()
{
unsigned char i;
for(i=0;i<30;i++)
{
del_1sec();
}
}
*/
void delaym(void)
{
int i;
for(i = 0; i <2000; i++)
; /* 25 */
}
void delay(void)
{
int i;
for(i = 0; i < 300; i++)
; /* 25 */
}
void delay1(void)
{
int k;
for(k = 0; k < 200; k++)
; /* 25 */
}
/*
void del(void)
{
unsigned char i;
for(i=0;i<3;i++)
{
del_100ms();
}
}
*/
rw=0;
en=1;
P0=LCD_Cntr;
rs=0;
//
rw=0;
en=0;
delay();
rs=1;
//
rw=0;
en=1;
P0=Data;
rs=1;
//
rw=0;
en=0;
delay();
}
void lcd_init(void)
{
Controler(0x38);
/**********************************/
delay();
Controler(0x0c);
delay();
Controler(0x06);
delay();
Controler(0x01);
delay1();
////////////////////////////////////////////////////////////////////////////
void reverse(void)
{
char i;
// 7.2 Degree. For 360 Degree = 50 in for loop
for(i=0;i<=97;i++)
{
t0=0;
t1=1;
wr=1;
rd=0;
delaym();
t0=1;
t1=0;
wr=1;
rd=0;
delaym();
t0=1;
t1=0;
wr=0;
rd=1;
delaym();
t0=0;
t1=1;
wr=0;
rd=1;
delaym();
}
}
void forward(void)
{
char i;
// 7.2 Degree. For 360 Degree = 50 in for loop
for(i=0;i<=97;i++)
{
t0=0;
t1=1;
wr=0;
rd=1;
delaym();
t0=1;
t1=0;
wr=0;
rd=1;
delaym();
t0=1;
t1=0;
wr=1;
rd=0;
delaym();
t0=0;
t1=1;
wr=1;
rd=0;
delaym();
}
void RX(void)
{
TMOD=0X20;
TH1=-3;
TR1=0xff;
SCON=0X50;
RI=0;
}
/*
*/
////////////////////////////////////////////////////////////////////////////
// int i;
Controler(0xca);
// delay1();
if(d1<=0x09)
{
Data_Display('0');
Data_Display('0');
Data_Display(d1+0x30);
else
if(d1<=0x63)
{
B=0x0a;
a=d1/B;
Data_Display('0');
Data_Display(a+0x30);
Data_Display(B+0x30);
}
else
{
B=0x0a;
a=d1/B;
temp=B;
B=0x0a;
a=a/B;
Data_Display(a+0x30);
Data_Display(B+0x30);
Data_Display(temp+0x30);
void main()
{
unsigned char dn[]= {"
"};
int i,u=0,y=0,d=0,z,p=0,dr=0,fir=0,fir1=1,gos=0,gos1=1,user1=0,user2=0,user1_detect=0,clear1=0;
int pass=0,t6=0,exit=0;
t0=0;
t1=0;
wr=0;
rd=0;
ac=0;
bulb=0;
lcd_init();
Controler(0x00);
delay();
Controler(0x01);
delay();
disp(0x80," Microcontroller");
disp(0xc0,"
Based
");
del_1sec();
del_500ms();
del_1sec();
disp(0x80," RFID Based ");
disp(0xc0," Transportation ");
del_1sec();
del_500ms();
del_1sec();
del_1sec();
del_500ms();
del_1sec();
disp(0x80," Management ");
disp(0xc0,"
SYSTEM
");
del_1sec();
del_500ms();
del_1sec();
");
z=0;
user2=0;
user1=9;
clear1=0;
user1_detect=0;
u=0;
/////////////////////////////////////////////////////////////////////////
RX();
RI=0;
while(1)
{
label:
//tx=0;
disp(0x80,"
BUS IS
");
pass=1;
del_1sec();
del_1sec();
disp(0x80,"
BUS IS
");
forward();
del_1sec();
led=0;
del_1sec();
}
// if bus moving
else
//tx=0;
disp(0x80,"
BUS IS
");
del_1sec();
del_1sec();
pass=0;
//bulb=0;
//ac=0;
disp(0x80," BUS IS
disp(0xc0,"
");
STOPPED ");
reverse();
del_1sec();
del_1sec();
led=1;
retrn:
RI=0;
RI=0;
while(RI==0)
{
if(irin==1)
{
track3=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track3=1;
del_1sec();
del_1sec();
}
if(irout==1)
{
if(explosive==0)
{
disp(0x80," Explosive
disp(0xc0,"
");
Detected ");
track2=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track2=1;
del_1sec();
del_1sec();
del_1sec();
del_1sec();
del_1sec();
if(key==1)
goto label;
if(RI==1)
{
y=1;
break;
}
} //RI=0
if(y==1)
{
labelexit:
Controler(0x01);
delay();
Controler(0x80);
delay();
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////
del_500ms();
//RX();
RI=0;
RI=0;
disp(0x80,"User : ");
for(i=1;i<=8;i++)
{
while(RI==0)
{}
RI=0;
dn[i]=SBUF;
Data_Display(dn[i]);
z=1;
}
if(clear1==0)
{
clear1=1;
user1_detect=1;
}
else
if(clear1==1)
{
clear1=0;
user1_detect=0;
}
if(user1<=2)
{
disp(0xc0,"BALANCE : LOW");
track1=0;
del_1sec();
del_1sec();
// User 1
del_100ms();
//del_10ms();
track1=1;
del_1sec();
del_1sec();
}
else
{
disp(0xc0,"BALANCE : ");
conv_disp(user1);
}
else
if(dn[6]=='8' && dn[7]=='0'&& dn[8]=='7')
{
disp(0xc0,"BALANCE : LOW");
track1=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track1=1;
// User 2
del_1sec();
del_1sec();
goto retrn;
}
pass=0;
del_1sec();
del_1sec();
del_1sec();
while(z==1)
{
if(exit==1)
{
exit=0;
goto retrn;
}
if(irin==1)
{
z=0;
del_1sec();
del_1sec();
goto retrn;
}
if(irout==1)
{
//z=0;
disp(0x80," UNAUTHORISED ");
disp(0xc0," ENTRY DETECTED ");
track3=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track3=1;
del_1sec();
del_1sec();
}
if(explosive==0)
{
disp(0x80," Explosive
disp(0xc0,"
");
Detected ");
track2=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track2=1;
del_1sec();
del_1sec();
del_1sec();
del_1sec();
del_1sec();
if(key==1)
goto label;
y=0;
}
// while z = 1
}// y=1
// key press
if bus stopped
if(light==0)
{
bulb=0;
}
else
if(light==1)
{
bulb=1;
}
if(temp==0)
{
ac=1;
}
else
if(temp==1)
{
ac=0;
}
if(explosive==0)
{
disp(0x80," Explosive
disp(0xc0,"
Detected ");
track2=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track2=1;
del_1sec();
del_1sec();
del_1sec();
del_1sec();
del_1sec();
RI=0;
RI=0;
for(i=0;i<=400;i++)
{
del_2ms();
if(RI==1)
");
u=1;
break;
}
} //for
if(u==1)
{
Controler(0x01);
//Data_Display('a');
RI=0;
RI=0;
for(i=1;i<=8;i++)
{
while(RI==0)
{}
");
RI=0;
dn[i]=SBUF;
Data_Display(dn[i]);
del_1sec();
del_1sec();
del_1sec();
if(user1_detect==1)
{
//user1_detect=0;
user1=user1-2;
disp(0x8f,".");
track4=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track4=1;
del_1sec();
del_1sec();
del_1sec();
else
if(user1_detect==1)
{
//user1_detect=0;
user1=user1-2;
disp(0x8f,".");
track5=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
// station 2
track5=1;
del_1sec();
del_1sec();
del_1sec();
else
if(user1_detect==1)
{
//user1_detect=0;
user1=user1-2;
disp(0x8f,".");
}
track7=0;
del_1sec();
del_1sec();
del_100ms();
//del_10ms();
track7=1;
// station 3
del_1sec();
del_1sec();
del_1sec();
}
u=0;
//Controler(0x01);
}
// if u==1
}//while
}//main