From f3d38ab8e286c7c030b9c6474298c529c697ab49 Mon Sep 17 00:00:00 2001 From: "romolo.manfredini@gmail.com" Date: Sat, 13 Jul 2013 08:53:42 +0000 Subject: [PATCH] Add contrast adjust for taranis --- src/gui/menu_general.cpp | 6 ++---- src/simpgmspace.cpp | 5 ++++- src/targets/taranis/lcd_driver.cpp | 12 ++++++++---- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/gui/menu_general.cpp b/src/gui/menu_general.cpp index 245f330fa..79eddeb78 100644 --- a/src/gui/menu_general.cpp +++ b/src/gui/menu_general.cpp @@ -154,7 +154,7 @@ enum menuGeneralSetupItems { IF_HAPTIC(ITEM_SETUP_HAPTIC_LENGTH) IF_HAPTIC(ITEM_SETUP_HAPTIC_STRENGTH) IF_PCBSKY9X(ITEM_SETUP_BRIGHTNESS) - IF_9X(ITEM_SETUP_CONTRAST) + ITEM_SETUP_CONTRAST, ITEM_SETUP_ALARMS_LABEL, ITEM_SETUP_BATTERY_WARNING, IF_PCBSKY9X(ITEM_SETUP_CAPACITY_WARNING) @@ -205,7 +205,7 @@ void menuGeneralSetup(uint8_t event) } #endif - MENU(STR_MENURADIOSETUP, menuTabDiag, e_Setup, ITEM_SETUP_MAX+1, {0, IF_RTCLOCK(2) IF_RTCLOCK(2) IF_BATTGRAPH(1) LABEL(SOUND), IF_AUDIO(0) IF_BUZZER(0) IF_VOICE(0) IF_CPUARM(0) IF_CPUARM(0) IF_CPUARM(0) IF_CPUARM(0) 0, IF_AUDIO(0) IF_HAPTIC(LABEL(HAPTIC)) IF_HAPTIC(0) IF_HAPTIC(0) IF_HAPTIC(0) IF_PCBSKY9X(0) IF_9X(0) LABEL(ALARMS), 0, IF_PCBSKY9X(0) IF_PCBSKY9X(0) 0, 0, 0, IF_ROTARY_ENCODERS(0) LABEL(BACKLIGHT), 0, 0, CASE_PWM_BACKLIGHT(0) CASE_PWM_BACKLIGHT(0) 0, IF_SPLASH(0) IF_GPS(0) IF_GPS(0) IF_PXX(0) IF_CPUARM(0) IF_CPUARM(0) IF_FAI_CHOICE(0) 0, LABEL(TX_MODE), CASE_PCBTARANIS(0) 1/*to force edit mode*/}); + MENU(STR_MENURADIOSETUP, menuTabDiag, e_Setup, ITEM_SETUP_MAX+1, {0, IF_RTCLOCK(2) IF_RTCLOCK(2) IF_BATTGRAPH(1) LABEL(SOUND), IF_AUDIO(0) IF_BUZZER(0) IF_VOICE(0) IF_CPUARM(0) IF_CPUARM(0) IF_CPUARM(0) IF_CPUARM(0) 0, IF_AUDIO(0) IF_HAPTIC(LABEL(HAPTIC)) IF_HAPTIC(0) IF_HAPTIC(0) IF_HAPTIC(0) IF_PCBSKY9X(0) 0, LABEL(ALARMS), 0, IF_PCBSKY9X(0) IF_PCBSKY9X(0) 0, 0, 0, IF_ROTARY_ENCODERS(0) LABEL(BACKLIGHT), 0, 0, CASE_PWM_BACKLIGHT(0) CASE_PWM_BACKLIGHT(0) 0, IF_SPLASH(0) IF_GPS(0) IF_GPS(0) IF_PXX(0) IF_CPUARM(0) IF_CPUARM(0) IF_FAI_CHOICE(0) 0, LABEL(TX_MODE), CASE_PCBTARANIS(0) 1/*to force edit mode*/}); uint8_t sub = m_posVert - 1; @@ -407,7 +407,6 @@ void menuGeneralSetup(uint8_t event) break; #endif -#if !defined(PCBTARANIS) && !defined(PCBACT) case ITEM_SETUP_CONTRAST: lcd_putsLeft(y, STR_CONTRAST); lcd_outdezAtt(RADIO_SETUP_2ND_COLUMN, y, g_eeGeneral.contrast, attr|LEFT); @@ -416,7 +415,6 @@ void menuGeneralSetup(uint8_t event) lcdSetContrast(); } break; -#endif case ITEM_SETUP_ALARMS_LABEL: lcd_putsLeft(y, STR_ALARMS_LABEL); diff --git a/src/simpgmspace.cpp b/src/simpgmspace.cpp index d00703857..f4eaf4bfa 100644 --- a/src/simpgmspace.cpp +++ b/src/simpgmspace.cpp @@ -336,9 +336,10 @@ void *main_thread(void *) pthread_t main_thread_pid; void StartMainThread(bool tests) { +#if defined(SDCARD) if (strlen(simuSdDirectory) == 0) getcwd(simuSdDirectory, 1024); - +#endif main_thread_running = (tests ? 1 : 2); pthread_create(&main_thread_pid, NULL, &main_thread, NULL); } @@ -453,10 +454,12 @@ FATFS g_FATFS_Obj; FRESULT f_stat (const TCHAR * name, FILINFO *) { char path[1024]; +#if defined(SDCARD) if (name[0] == '/') sprintf(path, "%s%s", simuSdDirectory, name); else strcpy(path, name); +#endif struct stat tmp; // printf("f_stat(%s)\n", path); fflush(stdout); diff --git a/src/targets/taranis/lcd_driver.cpp b/src/targets/taranis/lcd_driver.cpp index a31f0bbce..75ae3e070 100644 --- a/src/targets/taranis/lcd_driver.cpp +++ b/src/targets/taranis/lcd_driver.cpp @@ -13,14 +13,15 @@ #define WriteData(x) AspiData(x) #define WriteCommand(x) AspiCmd(x) +#define CONTRAST_OFS 10 static void LCD_Init() { - AspiCmd(0x25); //Temperature compensation curve definition: 0x25 = -0.05%/oC AspiCmd(0x2b); //Panel loading set ,Internal VLCD. + AspiCmd(0x25); //Temperature compensation curve definition: 0x25 = -0.05%/oC AspiCmd(0xEA); //set bias=1/10 :Command table NO.27 AspiCmd(0x81); //Set Vop - AspiCmd(50); //0--255 + AspiCmd(g_eeGeneral.contrast+CONTRAST_OFS); //0--255 AspiCmd(0xA6); //inverse display off AspiCmd(0xD1); //SET RGB:Command table NO.21 .SET RGB or BGR. D1=RGB AspiCmd(0xD5); //set color mode 4K and 12bits :Command table NO.22 @@ -47,11 +48,11 @@ static void LCD_Init() } static void LCD_Init1() { - AspiCmd(0x25); //Temperature compensation curve definition: 0x25 = -0.05%/oC AspiCmd(0x2b); //Panel loading set ,Internal VLCD. + AspiCmd(0x25); //Temperature compensation curve definition: 0x25 = -0.05%/oC AspiCmd(0xEA); //set bias=1/10 :Command table NO.27 AspiCmd(0x81); //Set Vop - AspiCmd(50); //0--255 + AspiCmd(g_eeGeneral.contrast+CONTRAST_OFS); //0--255 AspiCmd(0xA6); //inverse display off AspiCmd(0xD1); //SET RGB:Command table NO.21 .SET RGB or BGR. D1=RGB AspiCmd(0xD5); //set color mode 4K and 12bits :Command table NO.22 @@ -211,4 +212,7 @@ void lcdInit() void lcdSetRefVolt(uint8_t val) { + AspiCmd(0x81); //Set Vop + AspiCmd(val+CONTRAST_OFS); //0--255 } +