كود:
// LCD module connections
sbit LCD_RS at LATB4_bit;
sbit LCD_EN at LATB5_bit;
sbit LCD_D4 at LATB0_bit;
sbit LCD_D5 at LATB1_bit;
sbit LCD_D6 at LATB2_bit;
sbit LCD_D7 at LATB3_bit;
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB0_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D7_Direction at TRISB3_bit;
unsigned char *text, second, minute, hour, date, month,year, day, i = 0;
char select, select_op, selection, submenu,temp0 = 0;
char m,h,dia,Flags=0,h5=0,m5=0,da5=0,ye5=0,mo5=0;
char h1=0,m1=0,da1=0,ye1=0,mo1=0,h2=0,m2=0,da2=0,ye2=0,mo2=0,h3=0,m3=0,da3=0,ye3=0,mo3=0,h4=0,m4=0,da4=0,ye4=0,mo4=0,x=0,y=0,j=0,mo=0,da=0,ye=0;
char day_name[8][4] = {"LUN","MAD","MED","JED","VED","SED","DIM"};
void display(){
second = ((second & 0xF0) >> 4)*10 + (second & 0x0F); // Transform seconds
minute = ((minute & 0xF0) >> 4)*10 + (minute & 0x0F); // Transform months
hour = ((hour & 0xF0) >> 4)*10 + (hour & 0x0F); // Transform hours
year = ((year & 0xF0) >> 4)*10 + (year & 0x0F); // Transform hours
date = ((date & 0xF0) >> 4)*10 + (date & 0x0F); // Transform day
month = ((month & 0xF0) >> 4)*10 + (month & 0x0F); // Transform month
}
void write_value(char address, char data_){
I2C1_Start();
I2C1_Wr(0xD0);
I2C1_Wr(address);
I2C1_Wr(data_);
I2C1_Stop(); }
void relay(){
while(x==1){Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1, 2,"EVE1");
Lcd_Out(2, 2,"EVE2");
Lcd_Out(1,10,"EVE3");
Lcd_Out(2,10,"EVE4");
select = 1;
selection = 1;x=2;
while (x==2){
if ((PORTd.f3 = 1) && (submenu == 0)) //When press RC0 '>' selecting display options
{
switch(selection)
{
case 1:
Lcd_Chr(1,1,'>');
selection = 2;
select = 1;
Lcd_Chr(2,9,' ');
delay_ms(400);
break;
case 2:
Lcd_Chr(2,1,'>');
selection = 3;
select = 2;
Lcd_Chr(1,1,' ');
delay_ms(400);
break;
case 3:
Lcd_Chr(1,9,'>');
selection = 4;
select = 3;
Lcd_Chr(2,1,' ');
delay_ms(400);
break;
case 4:
Lcd_Chr(2,9,'>');
selection = 1;
select = 4;
Lcd_Chr(1,9,' ');
delay_ms(400);
break;
}
}
if (PORTd.F4 = 1) //When press PORTA.F1 - choose selected option/menu
{
switch(select)
{
case 1:
y=2;x=0;
Lcd_Cmd(_LCD_CLEAR);
break;
case 2:
y=2;x=0;
Lcd_Cmd(_LCD_CLEAR);
break;
case 3:
y=4;x=0;
Lcd_Cmd(_LCD_CLEAR); //Clear LCD screen
break;
case 4:
y=5;x=0;
Lcd_Cmd(_LCD_CLEAR); //Clear LCD screen
break;
}
}
}
}}
void fixed_text()
{
// Lcd_Out(1,1,"Date:");
Lcd_Chr(1,5,'-');
Lcd_Chr(1,8,'-');
//Lcd_Out(2,1,"Time:");
Lcd_Chr(2,5,':');
Lcd_Chr(2,8,':');
Lcd_Out(1,9,"20");
}
void display_dat()
{
Lcd_Chr(1, 3, (da / 10) + 48); // Print tens digit of day variable
Lcd_Chr(1, 4, (da % 10) + 48); // Print oness digit of day variable
Lcd_Chr(1, 6, (mo / 10) + 48);
Lcd_Chr(1, 7, (mo % 10) + 48);
Lcd_Chr(1, 11,(ye / 10) + 48);
Lcd_Chr(1, 12, (ye % 10) + 48);
Lcd_Chr(2, 3, (h/ 10) + 48);
Lcd_Chr(2, 4, (h % 10) + 48);
Lcd_Chr(2, 6, (m / 10) + 48);
Lcd_Chr(2, 7, (m % 10) + 48);
}
void display_dat1()
{
Lcd_Chr(1, 3, (da1 / 10) + 48); // Print tens digit of day variable
Lcd_Chr(1, 4, (da1 % 10) + 48); // Print oness digit of day variable
Lcd_Chr(1, 6, (mo1 / 10) + 48);
Lcd_Chr(1, 7, (mo1 % 10) + 48);
Lcd_Chr(1, 11,(ye1 / 10) + 48);
Lcd_Chr(1, 12, (ye1 % 10) + 48);
Lcd_Chr(2, 3, (h1/ 10) + 48);
Lcd_Chr(2, 4, (h1 % 10) + 48);
Lcd_Chr(2, 6, (m1 / 10) + 48);
Lcd_Chr(2, 7, (m1 % 10) + 48);
}
void display_dat2()
{
Lcd_Chr(1, 3, (da2 / 10) + 48); // Print tens digit of day variable
Lcd_Chr(1, 4, (da2 % 10) + 48); // Print oness digit of day variable
Lcd_Chr(1, 6, (mo2 / 10) + 48);
Lcd_Chr(1, 7, (mo2 % 10) + 48);
Lcd_Chr(1, 11,(ye2 / 10) + 48);
Lcd_Chr(1, 12, (ye2 % 10) + 48);
Lcd_Chr(2, 3, (h2/ 10) + 48);
Lcd_Chr(2, 4, (h2 % 10) + 48);
Lcd_Chr(2, 6, (m2 / 10) + 48);
Lcd_Chr(2, 7, (m2 % 10) + 48);
}
void display_dat3()
{
Lcd_Chr(1, 3, (da3 / 10) + 48); // Print tens digit of day variable
Lcd_Chr(1, 4, (da3 % 10) + 48); // Print oness digit of day variable
Lcd_Chr(1, 6, (mo3 / 10) + 48);
Lcd_Chr(1, 7, (mo3 % 10) + 48);
Lcd_Chr(1, 11,(ye3 / 10) + 48);
Lcd_Chr(1, 12, (ye3 % 10) + 48);
Lcd_Chr(2, 3, (h3/ 10) + 48);
Lcd_Chr(2, 4, (h3 % 10) + 48);
Lcd_Chr(2, 6, (m3 / 10) + 48);
Lcd_Chr(2, 7, (m3 % 10) + 48);
}
void display_dat4()
{
Lcd_Chr(1, 3, (da4 / 10) + 48); // Print tens digit of day variable
Lcd_Chr(1, 4, (da4 % 10) + 48); // Print oness digit of day variable
Lcd_Chr(1, 6, (mo4 / 10) + 48);
Lcd_Chr(1, 7, (mo4 % 10) + 48);
Lcd_Chr(1, 11,(ye4 / 10) + 48);
Lcd_Chr(1, 12, (ye4 % 10) + 48);
Lcd_Chr(2, 3, (h4/ 10) + 48);
Lcd_Chr(2, 4, (h4 % 10) + 48);
Lcd_Chr(2, 6, (m4 / 10) + 48);
Lcd_Chr(2, 7, (m4 % 10) + 48);
}
void display_dat5()
{
Lcd_Chr(1, 3, (da5 / 10) + 48); // Print tens digit of day variable
Lcd_Chr(1, 4, (da5 % 10) + 48); // Print oness digit of day variable
Lcd_Chr(1, 6, (mo5 / 10) + 48);
Lcd_Chr(1, 7, (mo5 % 10) + 48);
Lcd_Chr(1, 11,(ye5 / 10) + 48);
Lcd_Chr(1, 12, (ye5 % 10) + 48);
Lcd_Chr(2, 3, (h5/ 10) + 48);
Lcd_Chr(2, 4, (h5 % 10) + 48);
Lcd_Chr(2, 6, (m5 / 10) + 48);
Lcd_Chr(2, 7, (m5 % 10) + 48);
}
void conver()
{
Lcd_Chr(1, 3, (date / 10) + 48); // Print tens digit of day variable
Lcd_Chr(1, 4, (date % 10) + 48); // Print oness digit of day variable
Lcd_Chr(1, 6, (month / 10) + 48);
Lcd_Chr(1, 7, (month % 10) + 48);
Lcd_Chr(1, 11,(year / 10) + 48);
Lcd_Chr(1, 12, (year % 10) + 48);
Lcd_Chr(2, 3, (hour / 10) + 48);
Lcd_Chr(2, 4, (hour % 10) + 48);
Lcd_Chr(2, 6, (minute / 10) + 48);
Lcd_Chr(2, 7, (minute % 10) + 48);
Lcd_Chr(2, 9, (second / 10) + 48);
Lcd_Chr(2,10, (second % 10) + 48);
}
void eeprom(){
ye=Eeprom_read(0);da=Eeprom_read(1);mo=Eeprom_read(2);h=Eeprom_read(3);m=Eeprom_read(4);
ye1=Eeprom_read(5);da1=Eeprom_read(6);mo1=Eeprom_read(7);h1=Eeprom_read(8);m1=Eeprom_read(9);
ye2=Eeprom_read(10);da2=Eeprom_read(11);mo2=Eeprom_read(12);h2=Eeprom_read(13);m2=Eeprom_read(14);
ye3=Eeprom_read(15);da3=Eeprom_read(16);mo3=Eeprom_read(17);h3=Eeprom_read(18);m3=Eeprom_read(19);
}
void main() {
TRISd =0xff; portd=0;
TRISb =0; portb=0; portc.f0=portc.f1=0;trisc.f0=trisc.f1=0;
ANSELB = 0; // Set for DIGITAL function
ANSELD = 0; // Set for DIGITAL function
ANSELE = 0;
Lcd_Init();
eeprom();
Lcd_Cmd(_LCD_CLEAR); // Clear LCD display
Lcd_Cmd(_LCD_CURSOR_OFF); // Turn cursor off
I2C1_Init(100000); // initialize I2C at 100KHz
fixed_text();
write_value(0, 0); //Reset seconds and start oscillator
while(1){
while(y==0){
I2C1_Start();
I2C1_Wr(0xD0);
I2C1_Wr(0);
I2C1_Repeated_Start();
I2C1_Wr(0xD1);
second =I2C1_Rd(1);
minute =I2C1_Rd(1);
hour =I2C1_Rd(1);
day =I2C1_Rd(1);
date =I2C1_Rd(1);
month =I2C1_Rd(1);
year =I2C1_Rd(0);
I2C1_Stop();
display();conver();
eeprom();
if(m==minute)portb.f6=1;
if(m1==minute)portb.f7=1;
if(m2==minute)portc.f0=1;
if(m3==minute)portc.f1=1;
if(portd.f7==1) y=x=1;}
relay();
while(y==2){display_dat();Flags=1;Lcd_Chr(1,5,'-');Lcd_Chr(1,8,'-');Lcd_Chr(2,5,':');Lcd_Out(1,9,"20");
while(Flags==1)
{
if(Rd1_bit)
{
ye++;
if(ye > 99){ ye = 0;}Eeprom_Write(0,ye);
display_dat();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags=2;
for(i = 0; i <= 4; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==2)
{
if(Rd1_bit)
{
mo++;
if(mo > 12){mo = 1;}Eeprom_Write(2,mo);
display_dat();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags=3;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==3)
{
if(Rd1_bit == 1)
{
da++;
if(da> 31){da = 0;} Eeprom_Write(1,da);
display_dat();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags= 4;
Lcd_Cmd(_LCD_SECOND_ROW);
for(i = 0; i <= 5; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==4){
if(Rd1_bit)
{
h++;
if(h > 23){h = 0;}Eeprom_Write(3,h);
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags= 5;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==5)
{
if(Rd1_bit)
{
m++;
if(m > 59){m= 0;}Eeprom_Write(4,m);
display_dat();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit){
y=0;Flags=0;
Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Cmd(_LCD_CLEAR);
fixed_text();
Delay_ms(500);
while(Rd0_bit);
}
}
}
while(y==3){display_dat1();Flags=6;Lcd_Chr(1,5,'-');Lcd_Chr(1,8,'-');Lcd_Chr(2,5,':');Lcd_Out(1,9,"20");
while(Flags==6)
{
if(Rd1_bit)
{
ye1++;
if(ye1 > 99){ ye1 = 0;}
display_dat1();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags=7;
for(i = 0; i <= 4; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==7)
{
if(Rd1_bit)
{
mo1++;
if(mo1 > 12){mo1 = 1;}
display_dat1();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags=8;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==8)
{
if(Rd1_bit == 1)
{
da1++;
if(da1> 31){da1 = 0;}
display_dat1();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags= 9;
Lcd_Cmd(_LCD_SECOND_ROW);
for(i = 0; i <= 5; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==9)
{
if(Rd1_bit)
{
h1++;
if(h1 > 23){h1 = 0;}
display_dat1();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags= 10;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==10)
{
if(Rd1_bit)
{
m1++;
if(m1 > 59){m1= 0;}
display_dat1();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit){
Eeprom_Write(5,ye1);Eeprom_Write(6,da1);Eeprom_Write(7,mo1);Eeprom_Write(8,h1);Eeprom_Write(9,m1);
y=0;Flags=0;
Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Cmd(_LCD_CLEAR);
fixed_text();
Delay_ms(500);
while(Rd0_bit);
}
}
}
while(y==4){display_dat2();Flags=11;Lcd_Chr(1,5,'-');Lcd_Chr(1,8,'-');Lcd_Chr(2,5,':');Lcd_Out(1,9,"20");
while(Flags==11)
{
if(Rd1_bit)
{
ye2++;
if(ye2 > 99){ ye2 = 0;}Eeprom_Write(10,ye2);
display_dat2();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags=12;
for(i = 0; i <= 4; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==12)
{
if(Rd1_bit)
{
mo2++;
if(mo2 > 12){mo2 = 1;}Eeprom_Write(12,mo2);
display_dat2();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags=13;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==13)
{
if(Rd1_bit == 1)
{
da2++;
if(da2> 31){da2 = 0;}Eeprom_Write(11,da2);
display_dat2();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags= 14;
Lcd_Cmd(_LCD_SECOND_ROW);
for(i = 0; i <= 5; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==14)
{
if(Rd1_bit)
{
h2++;
if(h2 > 23){h2 = 0;}Eeprom_Write(13,h2);
display_dat2();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags= 15;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==15)
{
if(Rd1_bit)
{
m2++;
if(m2 > 59){m2= 0;}Eeprom_Write(14,m2);
display_dat2();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit){
y=0;Flags=0;
Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Cmd(_LCD_CLEAR);
fixed_text();
Delay_ms(500);
while(Rd0_bit);
}
}
}
while(y==5){display_dat3();Flags=16;Lcd_Chr(1,5,'-');Lcd_Chr(1,8,'-');Lcd_Chr(2,5,':');Lcd_Out(1,9,"20");
while(Flags==16)
{
if(Rd1_bit)
{
ye3++;
if(ye3 > 99){ ye3 = 0;}Eeprom_Write(15,ye3);
display_dat3();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags=17;
for(i = 0; i <= 4; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==17)
{
if(Rd1_bit)
{
mo3++;
if(mo3 > 12){mo3 = 1;}Eeprom_Write(17,mo3);
display_dat3();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags=18;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==18)
{
if(Rd1_bit == 1)
{
da3++;
if(da3> 31){da3 = 0;} Eeprom_Write(16,da3);
display_dat3();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags=19;
Lcd_Cmd(_LCD_SECOND_ROW);
for(i = 0; i <= 5; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==19)
{
if(Rd1_bit)
{
h3++;
if(h3 > 23){h3 = 0;}Eeprom_Write(18,h3);
display_dat3();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags= 20;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==20)
{
if(Rd1_bit)
{
m3++;
if(m3 > 59){m3= 0;}Eeprom_Write(19,m3);
display_dat3();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit){
y=0;Flags=0;
Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Cmd(_LCD_CLEAR);
fixed_text();
Delay_ms(500);
while(Rd0_bit);
}
}
}
while(y==6){display_dat3();Flags=21;Lcd_Chr(1,5,'-');Lcd_Chr(1,8,'-');Lcd_Chr(2,5,':');Lcd_Out(1,9,"20");
while(Flags==21)
{
if(Rd1_bit)
{
ye4++;
if(ye4 > 99){ ye4 = 0;}Eeprom_Write(20,ye4);
display_dat4();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags=22;
for(i = 0; i <= 4; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==22)
{
if(Rd1_bit)
{
mo4++;
if(mo4 > 12){mo4 = 1;}Eeprom_Write(21,mo4);
display_dat4();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags=23;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
}
while(Rd0_bit);
}
}
while(Flags==23)
{
if(Rd1_bit == 1)
{
da4++;
if(da4> 31){da4 = 0;} Eeprom_Write(22,da4);
display_dat4();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit == 1)
{
Flags=24;
Lcd_Cmd(_LCD_SECOND_ROW);
for(i = 0; i <= 5; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==24)
{
if(Rd1_bit)
{
h4++;
if(h4 > 23){h4 = 0;}Eeprom_Write(23,h4);
display_dat4();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit)
{
Flags= 25;
for(i = 0; i <= 2; i++)
{
Lcd_Cmd(_LCD_MOVE_CURSOR_RIGHT);
}
while(Rd0_bit);
}
}
while(Flags==25)
{
if(Rd1_bit)
{
m4++;
if(m4 > 59){m4= 0;}Eeprom_Write(24,m4);
display_dat4();
Lcd_Cmd(_LCD_MOVE_CURSOR_LEFT);
while(Rd1_bit);
}
else if(Rd0_bit){
y=0;Flags=0;
Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Cmd(_LCD_CLEAR);
fixed_text();
Delay_ms(500);
while(Rd0_bit);
}
}
}
}
}