Attempts to merge SPI_TFT2 & SPI_TFT_ILI9341
Dependencies: SPI_TFTx2 TFT_fonts TOUCH_TFTx2 mbed
Fork of CANary by
Diff: main.cpp
- Branch:
- Metric
- Revision:
- 128:25314f339565
- Parent:
- 127:27c739fd6d71
- Child:
- 129:8991d0de01ab
--- a/main.cpp Sun Jul 21 11:27:43 2013 +0000 +++ b/main.cpp Sun Jul 21 23:44:10 2013 +0000 @@ -20,7 +20,7 @@ #include "displayModes.h" #include "TOUCH_TFTx2.h" -char revStr[7] = "127"; // gg - revision string, max 6 characters +char revStr[7] = "128b"; // gg - revision string, max 6 characters FATFS USBdrive; LocalFileSystem local("local"); @@ -53,7 +53,7 @@ bool debugMode = false; bool usbEn = false; -bool logEn = true; +bool logEn = false; bool logOpen = false; bool yesBattLog = true; // gg - Batt Log unsigned char tNavRow = 3; // gg - 4x4 touch @@ -83,7 +83,7 @@ unsigned char dMode[2] = {mainScreen,brakeScreen}; //display mode unsigned char sMode = 0; // setup mode unsigned char lastDMode[2] = {0,0}; //last screen mode -unsigned char dtMode = 6; +unsigned char dtMode = 0; char displayLog[20][40]; unsigned char displayLoc = 0; unsigned int fwCount=1; @@ -138,6 +138,9 @@ bool metric = false; bool shunt[96]={0}; bool charging=false; +bool showHealth=false; +unsigned char saveDmode=99; +bool moving=false; int main() { //can1SleepMode.mode(OpenDrain); @@ -223,7 +226,7 @@ secsNoTouch=2; while (true) { if (!logOpen) { // Open new file if one is not already open - if(logEn&&usbEn){ //logging enables and USB device detected + if(logEn&&usbEn){ //logging enabled and USB device detected strftime(fileName, 32, "%m%d%H%M.alc", &t); //mmddhhmm.alc efr = f_open(&efile,fileName,FA_WRITE|FA_OPEN_ALWAYS); seconds = time(NULL); @@ -491,7 +494,7 @@ dMode[whichTouched] = cpScreen ; // GoTo CP Data Screen sMode=0; } else if (dMode[whichTouched]==dateScreen){ - dtMode=(dtMode<6)?dtMode+1:0; + dtMode=(dtMode<5)?dtMode+1:0; lastDMode[whichTouched]=99; } else { lastDMode[whichTouched]=99;//repaint to clear highlight @@ -593,7 +596,7 @@ break; case 12: // left-middle col, bottom row (not nav) - if (dMode[whichTouched] == indexScreen) { // gg - index + if (dMode[whichTouched] == configScreen) { // gg - index dMode[whichTouched] = dateScreen ; // GoTo Set Date/Time Screen } else { lastDMode[whichTouched]=99;//repaint to clear highlight @@ -603,6 +606,8 @@ case 22: // right-middle col, bottom row (not nav) if (dMode[whichTouched] == indexScreen) { // gg - index dMode[whichTouched] = logScreen ; + } else if (dMode[whichTouched]==configScreen) { + showHealth = !showHealth; } else { lastDMode[whichTouched]=99;//repaint to clear highlight } @@ -674,7 +679,8 @@ headlights = (lastMsg[indexLastMsg[0x358]].data[1]&0x80)?true:false; // headlight/turn signal indicator accV=floor(mon12V*scale12V*10+0.5)/10; //Round to nearest 10th accOn=(accV>5)?true:false; - charging=(mph[0]<0.1)&&(kW[0]<-1); // not moving and generating energy so much be charging + moving=(mph[0]>0.1); + charging=!moving&&(kW[0]<-1); // not moving and generating energy so must be charging if(laccOn&&!accOn){ // Car turned off if (repeatPoll) { // Log on shutdown if autopoll enabled tripLog(); // Write trip log on powerdown @@ -692,6 +698,10 @@ miles_trip[0]=0; kWh_trip[0]=0; wait5secs=5; + if(showHealth){ + saveDmode=dMode[0]; + dMode[0]=healthScreen; + } } laccOn=accOn; if(!accOn&&!logEn&&userIdle&&!playbackEn){ // Car off and logging disabled and no user activity @@ -709,6 +719,10 @@ msgReq.attach(&sendReq,0.015); } } + if(moving&&(saveDmode<99)&&(wait5secs==0)){ + dMode[0]=saveDmode; + saveDmode=99; + } //compute historic efficiency if(numSsamples>0){ // Avoid div0