This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3352 LCD (VFD) interface using GPMC

Other Parts Discussed in Thread: AM3352


We have interfaced 8 bit LCD (VFD) with AM3352 using GPMC interface. The GPMC signals AD0-AD7 are used for LCD datalines. The interfaced in configured in non_mux mode with address 0x0100 0000, 16Mb with GPMC_csn2. The following code is used to Configure the GPMC pin mux, Clk Confuguration and GPMC configuration. Using CCS 6.1 with Starterware

#define LCD_WRITE(x) (*(volatile unsigned char *)(x))
#define LCD_BASE 0x01000000 //(0x10000000)
#define LCD_OFFSET (LCD_BASE + 0x00)


GPMCPinMuxSetup_LCD(); //Pin mux for AD0-AD7, OE,WE,GPMC_nCs2

GPMCClkConfig(); //GMPC Clock configuration

void GPMC_CONFIG_Settings(unsigned int baseAddr,unsigned int csNum)
HWREG(baseAddr + GPMC_CONFIG1(csNum))=0x00000000; //
HWREG(baseAddr + GPMC_CONFIG2(csNum))=0x0007080A;
HWREG(baseAddr + GPMC_CONFIG3(csNum))=0;
HWREG(baseAddr + GPMC_CONFIG4(csNum))=0x04020702;
HWREG(baseAddr + GPMC_CONFIG5(csNum))=0x0009090A;
 HWREG(baseAddr + GPMC_CONFIG6(csNum))= 0;
HWREG(baseAddr + GPMC_CONFIG7(csNum))=0x00000F00; //address space starts at 0x10000000
HWREG(baseAddr + GPMC_CONFIG7(csNum)) += 0x00000041; //enable fpga cs

After doing this, i'm trying to write a byte in the address 0x0100 0000 but the application crashes at this point with undefined handler.

LCD_WRITE(LCD_OFFSET)=0x0c; //Here the code crashes.

Please let me know, if this is the right way to do and also why it crashes when i'm trying to write to GPMC address. Please suggest.