Opti interface

This commit is contained in:
Thomas
2014-04-07 14:16:30 +02:00
parent 3b47dd941a
commit f8272f3f48

View File

@@ -42,7 +42,7 @@ bool menuUsed = false;
bool menuUsed_last = false; bool menuUsed_last = false;
bool varioState = false; bool varioState = false;
uint8_t stat_displayed = 1; uint8_t stat_displayed = 1;
bool stat_blink_status = false; //bool stat_blink_status = false;
#define MENU_RIGHT 0 #define MENU_RIGHT 0
#define MENU_LEFT 1 #define MENU_LEFT 1
@@ -247,7 +247,6 @@ void renderVario()
display.print(F("m")); display.print(F("m"));
DateTime now = rtc.now(); DateTime now = rtc.now();
if (now.second() % 2 == 0) {
display.setCursor(55, 0); display.setCursor(55, 0);
renderZero(now.hour()); renderZero(now.hour());
@@ -257,14 +256,8 @@ void renderVario()
display.setCursor(72, 0); display.setCursor(72, 0);
renderZero(now.minute()); renderZero(now.minute());
display.print(now.minute()); display.print(now.minute());
}
else { if (now.second() % 2 == 0) {
display.setCursor(62, 0);
display.print((int)my_temperature);
display.drawCircle(75, 1, 1, BLACK);
display.setCursor(72, 0);
display.print(F(" C"));
}
uint8_t vcc = readVccPercent(); uint8_t vcc = readVccPercent();
uint8_t bat_x = 72; uint8_t bat_x = 72;
@@ -272,6 +265,14 @@ void renderVario()
display.drawRect(bat_x + 2, bat_y, 10, 6, BLACK); display.drawRect(bat_x + 2, bat_y, 10, 6, BLACK);
display.fillRect(bat_x, bat_y + 2, 2, 2, BLACK); display.fillRect(bat_x, bat_y + 2, 2, 2, BLACK);
display.fillRect(bat_x + 3 + (int)(99 - vcc) / 12, bat_y + 1, 8 - (int)(99 - vcc) / 12, 4, BLACK); display.fillRect(bat_x + 3 + (int)(99 - vcc) / 12, bat_y + 1, 8 - (int)(99 - vcc) / 12, 4, BLACK);
}
else {
display.setCursor(62, 9);
display.print((int)my_temperature);
display.drawCircle(75, 10, 1, BLACK);
display.setCursor(72, 9);
display.print(F(" C"));
}
display.setTextSize(2); display.setTextSize(2);
display.setCursor(0, 16); display.setCursor(0, 16);
@@ -368,7 +369,7 @@ void renderStatItem(float value, const __FlashStringHelper *unit, bool integer =
display.print(round(10 * value_abs) - (10 * m)); display.print(round(10 * value_abs) - (10 * m));
} }
display.setTextSize(1); display.setTextSize(1);
display.println(unit); display.print(unit);
} }
void renderZero(int value) void renderZero(int value)
@@ -656,38 +657,42 @@ void renderMenu(MenuItem newMenuItem = menu.getCurrent(), uint8_t dir = 2)
} }
else { else {
if (stat_blink_status) { //if (stat_blink_status) {
renderDateTime(DateTime(stat_to_display.chrono_start)); renderDateTime(DateTime(stat_to_display.chrono_start));
display.println(); display.println();
} //}
else { //else {
display.setTextColor(BLACK);
display.print(F("Chrono:")); display.print(F("Chrono:"));
renderChrono(stat_to_display); renderChrono(stat_to_display);
display.println(); display.println();
}
stat_blink_status = !stat_blink_status;
display.setTextColor(BLACK); //}
//stat_blink_status = !stat_blink_status;
display.print(F("Alt max:")); display.print(F("Alt max:"));
renderStatItem(stat_to_display.alti_max, F("m"), true); renderStatItem(stat_to_display.alti_max, F("m"), true);
display.println();
display.print(F("Alt min:")); display.print(F("Alt min:"));
renderStatItem(stat_to_display.alti_min, F("m"), true); renderStatItem(stat_to_display.alti_min, F("m"), true);
display.println();
display.print(F("Tx max:")); display.print(F("m/s:"));
float m = floor(stat_to_display.txchutemax); float m = floor(stat_to_display.txchutemax);
m = m + (round(10 * stat_to_display.txchutemax) - (10 * m)) / 10; m = m + (round(10 * stat_to_display.txchutemax) - (10 * m)) / 10;
renderStatItem(m, F("m/s")); renderStatItem(m, F("|"));
display.print(F("Tx Min:"));
m = floor(stat_to_display.txchutemin); m = floor(stat_to_display.txchutemin);
m = m + (round(10 * stat_to_display.txchutemin) - (10 * m)) / 10; m = m + (round(10 * stat_to_display.txchutemin) - (10 * m)) / 10;
renderStatItem(m, F("m/s")); renderStatItem(m, F(""));
display.println();
display.print(F("Cumul:")); display.print(F("Cumul:"));
renderStatItem(round(stat_to_display.cumul_alt), F("m"), true); renderStatItem(round(stat_to_display.cumul_alt), F("m"), true);
display.println();
} }
} }
break; break;
@@ -939,10 +944,11 @@ void loop()
stat.cumul_alt += vario; stat.cumul_alt += vario;
} }
/*
if (menu.getCurrent().getShortkey() == MENU_STAT) { if (menu.getCurrent().getShortkey() == MENU_STAT) {
menu.use(); menu.use();
} }
*/
// proceedings of the dynamic display of vario // proceedings of the dynamic display of vario
if (varioState == true) if (varioState == true)
renderVario(); renderVario();
@@ -1018,7 +1024,7 @@ void readButtons()
if (!menuUsed && varioState == false) { if (!menuUsed && varioState == false) {
if (menu.getCurrent().getShortkey() == MENU_STAT && stat_displayed < NB_STATS) { if (menu.getCurrent().getShortkey() == MENU_STAT && stat_displayed < NB_STATS) {
get_time2 += 1000; get_time2 += 1000;
stat_blink_status = true; //stat_blink_status = true;
stat_displayed++; stat_displayed++;
renderMenu(); renderMenu();
} }
@@ -1034,7 +1040,7 @@ void readButtons()
if (!menuUsed && varioState == false) { if (!menuUsed && varioState == false) {
if (menu.getCurrent().getShortkey() == MENU_STAT && stat_displayed > 1) { if (menu.getCurrent().getShortkey() == MENU_STAT && stat_displayed > 1) {
get_time2 += 1000; get_time2 += 1000;
stat_blink_status = true; //stat_blink_status = true;
stat_displayed--; stat_displayed--;
renderMenu(); renderMenu();
} }