
void lcd_write_data(char value[6]) ;
void LcdWaitBusy(void);

unsigned char *row ="K";
unsigned char read_value[6];

void main(void)
{
//SFR initialization…
//global interrupt enable

  SFRPAGE = CONFIG_PAGE;
  lcd_init(); 

lcd_gotoxy(0,2);
lcd(row);

lcd_gotoxy(0,2);
for(i=0;i<6;i++)
{
read_value[i]=lcd_read_data();	//read data in the DDRAM
}

while(1)                          
	{
	    lcd_gotoxy(0,4);
	   lcd_write_data(read_value);//write the data read from DDRAM
	}
}

unsigned char lcd_read_data() 
{ 
unsigned char dat; 

	LCD_DI=1;		//data mode
	LCD_RW=1; 		//read mode

	P7=0xff;		//all pins of port d is set for input mode

	if(x_position > 63) 
	{ 
		LCD_CS2=1; 
		sleep(5); 

		LCD_E=1; 	//strobe
		sleep(5); 
		LCD_E=0; 
		sleep(5); 
		LCD_E=1; 
		sleep(5); 

		dat = LCD_DATA; 

		LCD_E=0; 
		sleep(5); 
		LCD_CS2=0; 
	} 
	else 
	{ 
		LCD_CS1=1; 
		sleep(2); 

		LCD_E=1; 
		sleep(2); 
		LCD_E=0; 
		sleep(2); 
		LCD_E=1; 
		sleep(2); 
        //	LcdWaitBusy();

		dat = LCD_DATA; 

		LCD_E=0; 
		sleep(2); 
		LCD_CS1=0; 
	} 

	LCD_RW=0; 
	P7=0x00;		//all pins of port d is set for output mode

	return dat; 
}
