From 23bf8f240a7b54477cd4ff3202fe640cd4f173c8 Mon Sep 17 00:00:00 2001 From: Max Hunt Date: Sat, 21 Dec 2019 11:42:23 +0000 Subject: [PATCH] Update --- UPGRADE/Code/v2/v2.ino | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/UPGRADE/Code/v2/v2.ino b/UPGRADE/Code/v2/v2.ino index 2bb151a..2099aa6 100644 --- a/UPGRADE/Code/v2/v2.ino +++ b/UPGRADE/Code/v2/v2.ino @@ -139,7 +139,7 @@ void setup() { pinMode(CHGBTN, INPUT_PULLUP); digitalWrite(FETCTRL, LOW); battVoltage = GetVoltage(); - initScreen(); + resetScreen(); delay(200); /* FuelGauge.begin(); @@ -155,7 +155,13 @@ void loop() { checkCharging(); safetyCheck(); if (screenState != 0 && isSafe == true) {updateScreen();} - if (powerState == false && screenState == 0) { + if ((charging_1 == true || charging_2 == true) && screenState == 0) {updateDisplayChg();} + else{ + if (screenOn == true && screenState == 0){ + resetScreen(); + } + } + if ((powerState == false && screenState == 0) && (charging_1 == false && charging_2 == false)) { LowPower.powerDown(SLEEP_1S, ADC_OFF, BOD_OFF); } } @@ -220,7 +226,7 @@ void checkPresses(){ screenState++; } else { - initScreen(); + resetScreen(); screenState = 0; } } @@ -270,7 +276,7 @@ void turnOff() { } -void initScreen() { +void resetScreen() { display.clearDisplay(); display.display(); screenOn = false; @@ -278,7 +284,6 @@ void initScreen() { void updateScreen() { getBatteryCharge(); - updateDispayChg(); if (screenState == 1) { updateDisplayPct(); } @@ -295,6 +300,7 @@ void updateDisplayPct(){ display.setTextColor(0); display.print(batteryPct); display.println("%"); + updateDispayHelper(); display.display(); screenOn = true; } @@ -307,15 +313,23 @@ void updateDisplayVoltage(){ display.setTextColor(0); display.print(GetVoltage()); display.println(" V"); + updateDispayHelper(); display.display(); screenOn = true; } -void updateDispayChg(){ - if (charging_1 == true && batteryPct != 100) {display.drawBitmap(118, 0, charge_logo, 16, 14, 1);} - if (charging_2 == true && batteryPct != 100) {display.drawBitmap(118, 16, charge_logo, 16, 14, 1);} - if (charging_1 == true && batteryPct == 100) {display.drawBitmap(118, 0, charged_logo, 16, 14, 1);} - if (charging_2 == true && batteryPct == 100) {display.drawBitmap(118, 16, charged_logo, 16, 14, 1);} +void updateDisplayChg(){ + display.clearDisplay(); + updateDispayHelper(); + display.display(); + screenOn = true; +} + +void updateDispayHelper(){ + if (charging_1 == true && batteryPct != 100) {display.drawBitmap(118, 0, charge_logo, 16, 14, 1); screenOn = true;} + else if (charging_2 == true && batteryPct != 100) {display.drawBitmap(118, 16, charge_logo, 16, 14, 1); screenOn = true;} + else if (charging_1 == true && batteryPct == 100) {display.drawBitmap(118, 0, charged_logo, 16, 14, 1); screenOn = true;} + else if (charging_2 == true && batteryPct == 100) {display.drawBitmap(118, 16, charged_logo, 16, 14, 1); screenOn = true;} } double GetVoltage(){ @@ -357,7 +371,7 @@ void safetyCheck(){ if(powerState == true){ turnOff(); screenState = 0; - initScreen(); + resetScreen(); } } }