Attempts to merge SPI_TFT2 & SPI_TFT_ILI9341

Dependencies:   SPI_TFTx2 TFT_fonts TOUCH_TFTx2 mbed

Fork of CANary by Tick Tock

Branch:
Metric
Revision:
107:e9be732c1ad4
Parent:
106:f016912a03db
Child:
108:29b5a760adc2
--- a/displayModes.cpp	Fri Jun 28 20:26:11 2013 +0000
+++ b/displayModes.cpp	Sat Jun 29 02:44:02 2013 +0000
@@ -71,10 +71,30 @@
     lastldl=ldl;
 }
 
+void tripDisplay (bool force, bool showButtons){
+    static float lmiles=0;
+    tt.background(White);
+    if(force){
+        tt.cls();
+    }
+    if(force||lmiles!=miles_trip[0]){ //only update if changed
+        tt.foreground(Navy);
+        tt.set_font((unsigned char*) Arial28x28);
+        tt.locate(1,10);
+        printf("kWh : %s : Eff\n",distanceUnit());
+        for(int i=0; i<3; i++){
+            tt.locate(1,60+i*40);
+            printf("%3.2f : %3.1f : %2.1f\n",kWh_trip[i],convertDistance(miles_trip[i]),convertDistance(miles_trip[i])/kWh_trip[i]);
+        }
+        tt.set_font((unsigned char*) Arial12x12);
+        showButton(3,1," Reset","",4,4);
+        showButton(3,2," Reset","",4,4);
+    }
+}
+
 void mainDisplay (bool force, bool showButtons){
     unsigned short gids, SOC, packV;
     static unsigned short lgids=0, lSOC=0, lSOH=0, lpackV=0, maxPS=0;
-    //static unsigned char lbattTemp_x4=0;
     static signed short lbattTemp_x10=0;
     static float lkW=0, laccV=0, lmpkWh=0;
     static unsigned long lAh=0;
@@ -363,6 +383,7 @@
             jv=0;
         }
 
+        char* sTemperatureUnit = temperatureUnit();
         switch(step){
             case 0:
                 tt.cls();
@@ -370,7 +391,6 @@
                 break;
             case 1:
                 tt.locate(0,6);
-                char* sTemperatureUnit = temperatureUnit();
                 printf(" MAX  MIN  AVG CVLI T1  T2  T3  T4\n %04d %04d %04d %04d %2.0f%s %2.0f%s %2.0f%s %2.0f%s\n\n",
                     max,min,avg,jv, convertTemperature(battData[BatDataBaseG4*7+5]),sTemperatureUnit,convertTemperature(battData[BatDataBaseG4*7+8]),sTemperatureUnit,
                     convertTemperature(battData[BatDataBaseG4*7+11]),sTemperatureUnit,convertTemperature(battData[BatDataBaseG4*7+14]),sTemperatureUnit);
@@ -1076,6 +1096,9 @@
         case indexScreen:
             showIndex(changed,(display==whichTouched));
             break;
+        case tripScreen:
+            tripDisplay(changed,(display==whichTouched));
+            break;
         default:
             if (changed){
                 tt.background(Black);
@@ -1141,6 +1164,9 @@
                     case cpBarScreen: // gg - cpbars
                         sprintf(sTemp2,"CP Bars");
                         break;
+                    case tripScreen:
+                        sprintf(sTemp2," Trip");
+                        break;
                     case indexScreen: // gg - index
                         sprintf(sTemp2," Index");
                         break;