LCD & backlight init only from lcdInitDisplayDriver()

This commit is contained in:
Raphael Coeffic
2022-06-17 05:34:47 +02:00
committed by Raphael Coeffic
parent 8d9734f7d1
commit fe6922494a
5 changed files with 45 additions and 45 deletions
+3 -1
View File
@@ -144,11 +144,13 @@ void lcdInitDisplayDriver()
{
lv_init();
// Clear buffers first (is that really needed?)
// Clear buffers first
memset(LCD_FIRST_FRAME_BUFFER, 0, sizeof(LCD_FIRST_FRAME_BUFFER));
memset(LCD_SECOND_FRAME_BUFFER, 0, sizeof(LCD_SECOND_FRAME_BUFFER));
// Init hardware LCD driver
lcdInit();
backlightInit();
lv_disp_draw_buf_init(&disp_buf, lcdFront->getData(), lcd->getData(), LCD_W*LCD_H);
lv_disp_drv_init(&disp_drv); /*Basic initialization*/
-3
View File
@@ -209,9 +209,6 @@ void boardInit()
}
#endif
lcdInit();
backlightInit();
globalData.flyskygimbals = false;
#if defined(RADIO_FAMILY_T16) || defined(PCBNV14)
flysky_hall_stick_check_init();
+41 -39
View File
@@ -92,48 +92,53 @@ uint16_t get_battery_charge_state()
return chargeState;
}
void drawChargingInfo(uint16_t chargeState){
static int progress = 0;
const char* text = chargeState == CHARGE_STARTED ? STR_BATTERYCHARGING : STR_BATTERYFULL;
int h = 0;
LcdFlags color = 0;
if(CHARGE_STARTED == chargeState)
{
if(progress >= 100)
{
progress = 0;
}
else
{
progress+=25;
}
text = STR_BATTERYCHARGING;
h = ((BATTERY_H_INNER * progress) / 100);
color = COLOR_THEME_EDIT;
}
else if(CHARGE_FINISHED == chargeState)
{
text = STR_BATTERYFULL;
h = BATTERY_H_INNER;
color = COLOR_THEME_EDIT;
}
else
{
text = STR_BATTERYNONE;
h = BATTERY_H_INNER;
color = COLOR_THEME_PRIMARY1;
void drawChargingInfo(uint16_t chargeState)
{
static int progress = 0;
const char* text =
chargeState == CHARGE_STARTED ? STR_BATTERYCHARGING : STR_BATTERYFULL;
int h = 0;
LcdFlags color = 0;
if (CHARGE_STARTED == chargeState) {
if (progress >= 100) {
progress = 0;
} else {
progress += 25;
}
text = STR_BATTERYCHARGING;
h = ((BATTERY_H_INNER * progress) / 100);
color = COLOR_THEME_EDIT;
} else if (CHARGE_FINISHED == chargeState) {
text = STR_BATTERYFULL;
h = BATTERY_H_INNER;
color = COLOR_THEME_EDIT;
} else {
text = STR_BATTERYNONE;
h = BATTERY_H_INNER;
color = COLOR_THEME_PRIMARY1;
}
BACKLIGHT_ENABLE();
lcd->drawSizedText(LCD_W/2, LCD_H-50, text, strlen(text), CENTERED|COLOR_THEME_PRIMARY2);
BACKLIGHT_ENABLE();
lcd->clear();
lcd->drawSizedText(LCD_W / 2, LCD_H - 50, text, strlen(text),
CENTERED | COLOR_THEME_PRIMARY2);
lcd->drawFilledRect((LCD_W - BATTERY_W)/2, BATTERY_TOP, BATTERY_W, BATTERY_H, SOLID, COLOR_THEME_PRIMARY2);
lcd->drawFilledRect((LCD_W - BATTERY_W_INNER)/2, BATTERY_TOP_INNER, BATTERY_W_INNER, BATTERY_H_INNER, SOLID, COLOR_THEME_PRIMARY1);
lcd->drawFilledRect((LCD_W - BATTERY_W) / 2, BATTERY_TOP, BATTERY_W,
BATTERY_H, SOLID, COLOR_THEME_PRIMARY2);
lcd->drawFilledRect((LCD_W - BATTERY_W_INNER) / 2, BATTERY_TOP_INNER,
BATTERY_W_INNER, BATTERY_H_INNER, SOLID,
COLOR_THEME_PRIMARY1);
lcd->drawFilledRect((LCD_W - BATTERY_W_INNER)/2, BATTERY_TOP_INNER + BATTERY_H_INNER - h , BATTERY_W_INNER, h, SOLID, color);
lcd->drawFilledRect((LCD_W - BATTERY_CONNECTOR_W)/2, BATTERY_TOP-BATTERY_CONNECTOR_H , BATTERY_CONNECTOR_W, BATTERY_CONNECTOR_H, SOLID, COLOR_THEME_PRIMARY2);
lcd->drawFilledRect((LCD_W - BATTERY_W_INNER) / 2,
BATTERY_TOP_INNER + BATTERY_H_INNER - h, BATTERY_W_INNER,
h, SOLID, color);
lcd->drawFilledRect((LCD_W - BATTERY_CONNECTOR_W) / 2,
BATTERY_TOP - BATTERY_CONNECTOR_H, BATTERY_CONNECTOR_W,
BATTERY_CONNECTOR_H, SOLID, COLOR_THEME_PRIMARY2);
}
#define CHARGE_INFO_DURATION 500
//this method should be called by timer interrupt or by GPIO interrupt
void handle_battery_charge(uint32_t last_press_time)
{
@@ -174,8 +179,6 @@ void handle_battery_charge(uint32_t last_press_time)
if(updateTime == 0 || ((get_tmr10ms() - updateTime) >= 50))
{
if(!lcdInited) {
backlightInit();
lcdInit();
lcdInitDisplayDriver();
lcdInited = true;
}
@@ -184,7 +187,6 @@ void handle_battery_charge(uint32_t last_press_time)
}
updateTime = get_tmr10ms();
lcdInitDirectDrawing();
lcd->clear();
drawChargingInfo(chargeState);
lcdRefresh();
}
-2
View File
@@ -186,8 +186,6 @@ void boardInit()
memset(&g_FATFS_Obj, 0, sizeof(g_FATFS_Obj));
monitorInit();
adcInit(&stm32_hal_adc_driver);
backlightInit();
lcdInit();
hapticInit();
@@ -23,6 +23,7 @@ bool boardBacklightOn = false;
bool isBacklightEnabled() { return boardBacklightOn; }
void backlightFullOn() { boardBacklightOn = true; }
void backlightInit() {}
void backlightEnable(unsigned char) {}
void backlightEnable(unsigned char, unsigned char) {}
void backlightDisable() {}