#include <P89V51Rx2.H>
#include<ABSACC.h>
#define port P3
#define lcd_dataport P2 // lcd_dataport for lcd
#define keypad P1 // Port for keypadpad
#define timeport P0 // Port for RTC
sbit rs = port^0;
sbit rw = port^1;
sbit en = port^5;
int hr, min, sec;
void delay(unsigned int msec) //Time delay function
{
int i,j ;
for(i=0;i<msec;i++)
for(j=0;j<1275;j++);
}
void lcdcmd(unsigned char item) //Function to send command to LCD
{
lcd_dataport = item;
rs=0;
rw=0;
en=1;
delay(1);
en=0;
return;
}
void lcddata(unsigned char item) //Funtion to send data on LCD
{
lcd_dataport = item;
rs=1;
rw=0;
en=1;
delay(1);
en=0;
}
void lcddata_string(unsigned char *str) // Function to send string on LCD
{
int i=0;
while(str[i]!='\0')
{
lcddata(str[i]);
i++;
delay(1);
}
}
void lcd(unsigned char str[10]) // Funtion display string on LCD
{
lcdcmd(0x38);
lcdcmd(0x0C);
lcdcmd(0x01);
lcdcmd(0x80);
lcddata_string(str);
}
void rtc_read(unsigned char item)
{
timeport = item;
}
void rtc_write(unsigned char item)
{
timeport = item;
}
void bcdconv(unsigned char mybyte)
{
unsigned char x,y;
x=mybyte&0x0F;
x=x|0x30;
y=mybyte&0xF0;
y=y>>4;
y=y|0x30;
lcddata(y);
lcddata(x);
}
void main()
{
delay(220);
XBYTE[11]=0x82;
XBYTE[4]=0x15;
XBYTE[2]=0x55;
XBYTE[0]=0x00;
XBYTE[11]=0x02;
lcd("TIME:");
while(1)
{
lcdcmd(0x88);
rtc_read(0x00);
}
}