Hi- Just got the first hardware here, the MCB1760. Thinks look like they're working nicely, except every demo that uses the GLCD produces a mirror-image of what I would expect. Any ideas? I haven't found any kind of setting that would produce this. I have tried to rotate 180 and switch from landscape to portrait, but those settings don't undo a mirror-image. Thanks! Dan
Isn't there a define or something in the source code?
I think some of the examples do have a setting because there exists two hw variants.
There are three specific LCD drivers as expected by GLCD_SPI_LPC1700.c. When the code reads the LCD ID, rd_id_man() returns a 0. The code then uses the default, which is the ILI9320 LCD Controller.
Weird.
It seems that your LCD controller is not being detected properly.
Try reducing the SPI clock by changing the value that is written into LPC_SSP1->CR1 register. By default value 0x02 is used so try a higher value (for example 0x04).
If it still doesn’t work than you can bypass the autodetection and hardcode the driver code to match your LCD controller (probably 0x5408 -> SPFD5408 LCD Controller).
Robert, Thanks for your help. Changing the CR1 register doesn't seem to be the right thing to reduce the clock rate. The LCD doesn't work at all at CR1 == 0x04.
I experimented with changing the clock prescaler, LPC_SSP1->CPSR, from 0x02 to a higher value. I went as high as 0x80. By this I proved that I can slow the LCD down quite a bit, but it doesn't fix this issue.
If I hard-code the display ID to 5408, as you suggested, the display works perfectly. Since my application won't use the LCD, I can live with this solution and won't need to spend any more time on this one. Thanks again!!!! Dan