aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gdisp/Nokia6610GE8
diff options
context:
space:
mode:
authorinmarket <andrewh@inmarket.com.au>2013-10-02 00:56:57 +1000
committerinmarket <andrewh@inmarket.com.au>2013-10-02 00:56:57 +1000
commit8408e020b4a80f40ccbc15378a85fa2ce09da361 (patch)
tree15779e8e16235734b4f5d45b7e0fc9139eb67ae3 /drivers/gdisp/Nokia6610GE8
parent77872d856086241f671dd7b265c9869ed0c54984 (diff)
downloaduGFX-8408e020b4a80f40ccbc15378a85fa2ce09da361.tar.gz
uGFX-8408e020b4a80f40ccbc15378a85fa2ce09da361.tar.bz2
uGFX-8408e020b4a80f40ccbc15378a85fa2ce09da361.zip
Compile error fix.
Nokia GE8 - scale contrast correctly.
Diffstat (limited to 'drivers/gdisp/Nokia6610GE8')
-rw-r--r--drivers/gdisp/Nokia6610GE8/gdisp_lld.c8
-rw-r--r--drivers/gdisp/Nokia6610GE8/gdisp_lld_board_olimexsam7ex256.h2
2 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld.c b/drivers/gdisp/Nokia6610GE8/gdisp_lld.c
index 3f535369..d3e30d0e 100644
--- a/drivers/gdisp/Nokia6610GE8/gdisp_lld.c
+++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld.c
@@ -93,7 +93,7 @@
#define GDISP_SLEEP_POS ((GDISP_SCAN_LINES-GDISP_SLEEP_SIZE)/2)
#endif
#ifndef GDISP_INITIAL_CONTRAST
- #define GDISP_INITIAL_CONTRAST 38
+ #define GDISP_INITIAL_CONTRAST 60
#endif
#ifndef GDISP_INITIAL_BACKLIGHT
#define GDISP_INITIAL_BACKLIGHT 100
@@ -162,8 +162,8 @@ LLDSPEC bool_t gdisp_lld_init(GDISPDriver *g) {
// P1: 0x00 = page address normal, column address normal, address scan in column direction
// P2: 0x00 = RGB sequence (default value)
// P3: 0x02 = 4 bits per colour (Type A)
- write_cmd2(VOLCTR, GDISP_INITIAL_CONTRAST, 0x03); // Voltage control (contrast setting)
- // P1 = Contrast
+ write_cmd2(VOLCTR, 63*GDISP_INITIAL_CONTRAST/100, 0x03); // Voltage control (contrast setting)
+ // P1 = Contrast (0..63)
// P2 = 3 resistance ratio (only value that works)
delayms(100); // Allow power supply to stabilise
write_cmd(DISON); // Turn on the display
@@ -554,7 +554,7 @@ LLDSPEC bool_t gdisp_lld_init(GDISPDriver *g) {
case GDISP_CONTROL_CONTRAST:
if ((unsigned)g->p.ptr > 100) g->p.ptr = (void *)100;
acquire_bus();
- write_cmd2(VOLCTR, (unsigned)g->p.ptr, 0x03);
+ write_cmd2(VOLCTR, 63*(unsigned)g->p.ptr/100, 0x03);
release_bus();
g->g.Contrast = (unsigned)g->p.ptr;
return;
diff --git a/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_olimexsam7ex256.h b/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_olimexsam7ex256.h
index 8afc3573..4eeea62f 100644
--- a/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_olimexsam7ex256.h
+++ b/drivers/gdisp/Nokia6610GE8/gdisp_lld_board_olimexsam7ex256.h
@@ -227,7 +227,7 @@ static inline void write_data(uint16_t data) {
*/
static inline uint16_t read_data(void) {
#error "gdispNokia6610GE8: GDISP_HARDWARE_READPIXEL and GDISP_HARDWARE_SCROLL are not supported on this board"
- return 0;
+ return pSPI->SPI_RDR;
}
#endif