Guest
|
6610 nokia lcd contrast settng |
Posted: Sun Jun 18, 2006 9:09 am |
|
|
hello
i use 6610 lcd with brown cable that driver is S1D15D10.(it's not PCF8833)
i can esailly init it and draw Text on it.
it's contrast is very good and the screen is very bright.
i also get 6610 lcd from a old mobile it's cable is green.
this lcd work good on mobile with good quallity.
but when i want to test it on my board i can init it draw my text but
the contrast is really bad and screen is look like that
cover with cloud.(screen transparent with white color).
i change the VOLCTR value but only it darker or white.
i can find any good value for get a good picture.
can some one help me about the contrast for this lcd?
here is my init routine:
void InitLCD(void)
{
LCD_CS = 1;
LCD_CLK = 1;
LCD_SDA = 1;
LCD_RESET = 0;
LCD_RESET = 1;
delay_ms(1); // data sheet says to wait 100ms here
SendLcd(LCDCommand,DISCTL); // display control
SendLcd(LCDData,0x03);
SendLcd(LCDData,0x20);
SendLcd(LCDData,0x0c);
SendLcd(LCDCommand,COMSCN); //
SendLcd(LCDData,0x01); // Scan 1-80
SendLcd(LCDCommand,OSCON); //
SendLcd(LCDCommand,SLPOUT); // Sleep out command (must be done before DISPON)
SendLcd(LCDCommand,VOLCTR); // electronic volume, this is kinda contrast/brightness
SendLcd(LCDData,0xf0);//0x80);//0xf5); // change this to get brighter or darker start point then use volup/down to adjust
SendLcd(LCDData,3);
SendLcd(LCDCommand,TMPGRD); // Temp Gradient
SendLcd(LCDData,0);
SendLcd(LCDCommand,DISNOR);
SendLcd(LCDCommand,DISINV);
SendLcd(LCDCommand,DATCTL); // datctl
SendLcd(LCDData,0x00);
SendLcd(LCDData,0x04);
SendLcd(LCDData,0x01);
SendLcd(LCDData,0x02);
SendLcd(LCDCommand,RGBSET8);
SendLcd(LCDCommand,RGBSET8);
SendLcd(LCDData,0x00); // RED
SendLcd(LCDData,0x02);
SendLcd(LCDData,0x04);
SendLcd(LCDData,0x06);
SendLcd(LCDData,0x08);
SendLcd(LCDData,0x0a);
SendLcd(LCDData,0x0c);
SendLcd(LCDData,0x0f);
SendLcd(LCDData,0x00); // GREEN
SendLcd(LCDData,0x02);
SendLcd(LCDData,0x04);
SendLcd(LCDData,0x06);
SendLcd(LCDData,0x08);
SendLcd(LCDData,0x0a);
SendLcd(LCDData,0x0c);
SendLcd(LCDData,0x0f);
SendLcd(LCDData,0x00); // BLUE
SendLcd(LCDData,0x04);
SendLcd(LCDData,0x09);
SendLcd(LCDData,0x0f);
SendLcd(LCDCommand,NOP); // Data Sheet recomends you send this from time to time
SendLcd(LCDCommand,PWRCTR); // power ctrl
SendLcd(LCDData,0x0f); //everything on
LCD_Set_Resolution(LOW_RES);
SendLcd(LCDCommand,NOP); // Data Sheet recomends you send this from time to time
SendLcd(LCDCommand, DISON); // Turn Display ON
} |
|