Fix LCD fixes

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3167 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2010-12-09 01:59:18 +00:00
parent 52173a3324
commit f8cdb4bb63
3 changed files with 44 additions and 4 deletions

View File

@ -122,6 +122,46 @@ Olimex LPC1766-STK development board
serial driver). Other LPC17xx boards with the same clocking will run at
115200.
LCD
---
The LPC1766-STK has a Nokia 6100 132x132 LCD and either a Phillips PCF8833
or an Epson S1D15G10 LCD controller. The NuttX configuration may have to
be adjusted depending on which controller is used with the LCD. The
"LPC1766-STK development board Users Manual" states tha the board features
a "LCD NOKIA 6610 128x128 x12bit color TFT with Epson LCD controller."
But, referring to a different Olimex board, "Nokia 6100 LCD Display
Driver," Revision 1, James P. Lynch ("Nokia 6100 LCD Display Driver.pdf")
says:
"The major irritant in using this display is identifying the graphics
controller; there are two possibilities (Epson S1D15G00 or Philips
PCF8833). The LCD display sold by the German Web Shop Jelu has a Leadis
LDS176 controller but it is 100% compatible with the Philips PCF8833).
So how do you tell which controller you have? Some message boards have
suggested that the LCD display be disassembled and the controller chip
measured with a digital caliper well thats getting a bit extreme.
"Heres what I know. The Olimex boards have both display controllers
possible; if the LCD has a GE-12 sticker on it, its a Philips PCF8833.
If it has a GE-8 sticker, its an Epson controller. The older Sparkfun
6100 displays were Epson, their web site indicates that the newer ones
are an Epson clone. Sparkfun software examples sometimes refer to the
Philips controller so the whole issue has become a bit murky. The
trading companies in Honk Kong have no idea what is inside the displays
they are selling. A Nokia 6100 display that I purchased from Hong Kong
a couple of weeks ago had the Philips controller."
The LCD connects to the LPC1766 via SPI and two GPIOs. The two GPIOs are
noted above:
P1.21 is the SPI chip select, and
P3.25 is the LCD reset
P3.26 is PWM1 output used to control the backlight intensity.
MISO0 and MOSI0 are join via a 1K ohm resistor so the LCD appears to be
write only.
Development Environment
^^^^^^^^^^^^^^^^^^^^^^^

View File

@ -168,7 +168,7 @@
* P3[26]/STCLK/MAT0[1]/PWM1[3] 26 LCD_BL (PWM1)
*/
#define LPC1766STK_LCD_CS (GPIO_OUTPUT | GPIO_VALUE_ZERO | GPIO_PORT1 | GPIO_PIN21)
#define LPC1766STK_LCD_CS (GPIO_OUTPUT | GPIO_VALUE_ONE | GPIO_PORT1 | GPIO_PIN21)
#define LPC1766STK_LCD_RST (GPIO_OUTPUT | GPIO_VALUE_ZERO | GPIO_PORT3 | GPIO_PIN25)
#define LPC1766STK_LCD_BL GPIO_PWM1p3_3
#define GPIO_PWM1p3 GPIO_PWM1p3_3

View File

@ -474,7 +474,7 @@ static struct nokia_dev_s g_lcddev =
* P4: 0: Dispersion P40= 1: Non-dispersion
*/
#if CONFIG_NOKIA6100_BPP == 12
#if 1 // CONFIG_NOKIA6100_BPP == 12
static const uint8_t g_disctl[] =
{
S1D15G10_DISCTL, /* Display control */
@ -543,9 +543,9 @@ static const uint8_t g_datctl[] =
0, /* RGB->RGB */
#endif
#if CONFIG_NOKIA6100_BPP == 8
DATCTL_16GRAY_A /* Selects 16-bit color, Type A */
#elif CONFIG_NOKIA6100_BPP == 12
DATCTL_8GRAY /* Selects 8-bit color */
#elif CONFIG_NOKIA6100_BPP == 12
DATCTL_16GRAY_A /* Selects 16-bit color, Type A */
#else
# error "16-bit mode not yet implemented"
#endif