Dual CANbus monitor and instrumentation cluster supporting ILI9341 display controller

Dependencies:   SPI_TFTx2_ILI9341 TOUCH_TFTx2_ILI9341 TFT_fonts mbed

Fork of CANary by Tick Tock

Branch:
Metric
Revision:
120:041edeec08f5
Parent:
119:0e2b641e98a2
Child:
121:553faf139a20
--- a/utility.cpp	Fri Jul 05 16:55:04 2013 +0000
+++ b/utility.cpp	Mon Jul 08 02:08:08 2013 +0000
@@ -298,10 +298,24 @@
             imWs_x4 = packV_x2; // Volts*milliSeconds*2
             imWs_x4 *= -packA_x2; // milliWattseconds*4
             mWs_x4 += imWs_x4; // total mWs_x4
-            unloadedVavg_x2 += packV_x2-Resr*packA_x2;
-            Rlms    += (packV_x2-Resr*packA_x2-unloadedV_x2)*(packV_x2-Resr*packA_x2-unloadedV_x2);
-            redRlms += (packV_x2-(Resr-0.001)*packA_x2-unloadedV_x2)*(packV_x2-(Resr-0.001)*packA_x2-unloadedV_x2);
-            incRlms += (packV_x2-(Resr+0.001)*packA_x2-unloadedV_x2)*(packV_x2-(Resr+0.001)*packA_x2-unloadedV_x2);
+            float temp = packV_x2-Resr*packA_x2;
+            if(temp>curRmax){
+                curRmax=temp;
+            } else if(temp<curRmin){
+                curRmin=temp;
+            }
+            temp = packV_x2-(Resr-0.001)*packA_x2;
+            if(temp>redRmax){
+                redRmax=temp;
+            } else if(temp<redRmin){
+                redRmin=temp;
+            }
+            temp = packV_x2-(Resr+0.001)*packA_x2;
+            if(temp>incRmax){
+                incRmax=temp;
+            } else if(temp<incRmin){
+                incRmin=temp;
+            }
             numWsamples++;
         }else if((mType==1)&&(canRXmsg.id==0x1da)){ //Motor Speed
             imotorRPM=((canRXmsg.data[4]<<8)|(canRXmsg.data[5]));
@@ -359,8 +373,6 @@
                 data[2]=0x01;
                 break;
             case BatDataBaseG2: // group 1 has 6 frames
-                can1.monitor(false); // set to active mode
-                can1SleepMode = 0; // enable TX
                 data[0]=0x02; //change to request group 2 (cp data)
                 data[1]=0x21;
                 data[2]=0x02;
@@ -382,10 +394,9 @@
                 break;
             case BatDataBaseG6: // group 5 has 11 frames
                 reqMsgCnt = 99;
-                can1SleepMode = 1; // disable TX
+                can1SleepMode = VP230Sleep; // disable TX
                 can1.monitor(true); // set to snoop mode
                 msgReq.detach(); // stop ticker
-                //logCP=true; //LAJ for bench test
             default:
                 data[0]=0x30; //change to request next line message
                 data[1]=0x01;