Hi,
I am using WG128x64A and AT91sam7S64 processor. I am able to write a data to the LCD.
But i couldn't Read a Data from the GLCD.
This is my Read code
BYTE LcdDataRead () { DWORD rdata; DWORD rdata1,rdata2,rdata3,rdata4,rdata5,rdata6,rdata7,rdata8; AT91F_PIO_CfgInput( AT91C_BASE_PIOA, DATA0|DATA1|DATA2|DATA3|DATA4|DATA5|DATA6|DATA7) ; //config as input pins AT91F_PIO_SetOutput( AT91C_BASE_PIOA, RD_WR ); /* Read mode *///make DI and RW pin High AT91F_PIO_SetOutput( AT91C_BASE_PIOA, DAT_INS ); /* Data mode */ //make DI and RW pin High AT91F_PIO_SetOutput( AT91C_BASE_PIOA, ENABLE ) ; delay_10us(10); AT91F_PIO_ClearOutput( AT91C_BASE_PIOA, ENABLE ); delay_10us(10); rdata1 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA0 ); rdata1 = rdata1 & 0x01; rdata2 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA1 ); rdata2 = rdata2 & 0x02; rdata3 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA2 ); rdata3 = rdata3 & 0x03; rdata4 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA3 ); rdata4 = rdata4 & 0x08; rdata5 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA4 ); rdata5 = rdata5 & 0x10; rdata6 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA5 ); rdata6 = rdata6 & 0x20; rdata7 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA6 ); rdata7 = rdata7 & 0x40; rdata8 = (AT91F_PIO_GetStatus(AT91C_BASE_PIOA) & DATA7 ); rdata8 = rdata8 & 0x80; rdata = rdata1 |rdata2 |rdata3 |rdata4 |rdata5 |rdata6 |rdata7 |rdata8 ; AT91F_PIO_CfgOutput( AT91C_BASE_PIOA,DATA0|DATA1|DATA2|DATA3|DATA4|DATA5|DATA6|DATA7) ; //config as output pins AT91F_PIO_ClearOutput( AT91C_BASE_PIOA, DAT_INS |RD_WR |DATA0|DATA1|DATA2|DATA3|DATA4|DATA5|DATA6|DATA7 ); //make DI and RW pin low return rdata; /* return the data read */ }
I dont know what is wrong in my code.
Please help me to solve this problem.
with regards, Murthy.R