November 22, 2024, 06:04:24 PM

LPC-2378-STK Blank LCD

Started by chapmanag, November 28, 2014, 10:31:51 PM

Previous topic - Next topic

chapmanag

Hello.
I've been trying to get to grips with a newly purchased LPC-2378-STK development board but currently cannot get the LCD display to operate. The display remains blank at all times although the backlight is on and can be adjusted (when running with program that allows backlight adjustment via the AN_TRIM potentiometer)
Straight out of the box, when first powered up the LCD display did work. It showed the "Olimex" logo.
However it has never worked since I flashed the board with its first new program.
In the past week I have tried various programs and examples but cannot get anything to show on the LCD.
Initially I was working with Eclipse, Yagarto, OpenOCD as provided with the Olimex examples and using an ARM-USB-TINY-H to flash debug.
Currently I'm working with a 31 day version of IAR Embedded workbench (version 7) and a Segger J-Link EDU.
Both development toolsets work and flash the LPC-2378-STK.
I know that the board is working. I can debug and step through code within the IDE's. I can make LED's operate, buttons work etc.
But I cannot get the LCD to show anything.
Now suspect that I may have a fault in the board itself. Really need to swap the board for another to prove whether or not the board has a fault.

Thought I might try this post in the hope that someone might have some ideas.
Thanks.

JohnS

You may be able to get the HEX that was in the board from Olimex support and try restoring it to at least test.

Did you try building the LCD demo in their examples?  It's likely the same code.

John

chapmanag

Hello John.
Thanks for your information however I have now been able to find the cause of the problem.
Apparently the LCD's used on the LPC-2378-STK were no longer available.
Olimex had found a replacement part so latest versions of the development board now use a new type of LCD
However, Olimex have had to replace a couple of code modules (drv_glcd_cnfg.h and drv_glcd.c) so that the ARM no longer tried to check the LCD identification number.

Olimex Support (Lub) sent me a mail containing a link to "LPC2378-STK Patch"
https://www.olimex.com/Products/ARM/NXP/LPC2378-STK/resources/LPC2378-STK-examples.zip

The LPC2378-STK Patch contains two new versions of drv_glcd_cnfg.h and drv_glcd.c
However I still had to do some work to one of the files, drv_glcd.c
The file made reference to a number of functions which were not included with the patch (Ssp0ChipSelect()
Ssp0TranserByte() Ssp0SendBlock() Ssp0SetWordWidth() LcdLLInit() and LcdSetReset() )
I had to replace all calls to these functions with calls to equivalent functions from the old version of drv_glcd.c ( GLCD_SPI_ChipSelect() GLCD_SPI_TranserByte() GLCD_SPI_SendBlock() GLCD_SPI_SetWordWidth() GLCD_LLInit() GLCD_SetReset() )

With my amendment to the patch versions of drv_glcd_cnfg.h and drv_glcd.c the LPC-2378-STK examples compiled, could be used to flash the board and ... Hey Presto... The LCD works. Excellent (if not a little bit painful)

So thanks to Olimex Support. Pity I hadn't been able to find any reference the changed LCD in the LPC-2378-STK or the fact that I needed to use a patch to get the examples to work. I guess I should have Googled a little bit harder  :)

JohnS

Good to hear it's working.

Don't blame yourself - they should put them on the product page (and fully working version)!  (They usually do.)

John