Treehouse Mbed Team / Mbed 2 deprecated APS_DCM1SL

Dependencies:   mbed

Revision:
11:01dcfb29fbc4
Parent:
9:816b9a4e4f21
Child:
12:fd1fd1857628
diff -r 6c3233b03658 -r 01dcfb29fbc4 src/menu.cpp
--- a/src/menu.cpp	Fri Dec 07 17:39:01 2018 +0000
+++ b/src/menu.cpp	Fri Dec 07 20:42:41 2018 +0000
@@ -26,6 +26,7 @@
 #include "globals.h"
 #include "serial.h"
 #include "menu.h"
+#include "adc.h"
 #include "Ticker.h"
 
 Ticker drt;
@@ -52,37 +53,17 @@
 /*******************************************************************************
  refreshData - Refresh voltage and current readings to the terminal
 *******************************************************************************/
-void refreshData(void){
+void refreshData(struct adcValues avals){
     //loopTime = masterTimer.read_ms() - oldTime;
     //oldTime = masterTimer.read_ms();
     
-    double v48f = 0.0;
-    double v24f = 0.0;
-    double v12f = 0.0;
-    double i48f = 0.0;
-    double i24f = 0.0;
-    double i12f = 0.0;
+    struct displayValues dvals = calcDisplayValues(avals);
     
-    if(!raw){
-        v48f = VOLTAGE_48_FACTOR*v48;
-        v24f = VOLTAGE_24_FACTOR*v24;
-        v12f = VOLTAGE_12_FACTOR*v12;
-        i48f = (i48-CURRENT_48_OFFSET)/CURRENT_48_DIV_FACTOR;
-        i24f = (i24-CURRENT_24_OFFSET)/CURRENT_24_DIV_FACTOR;
-        i12f = (i12-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR;
-    }else{
-        v48f = 1.0*v48;
-        v24f = 1.0*v24;
-        v12f = 1.0*v12;
-        i48f = 1.0*i48;
-        i24f = 1.0*i24;
-        i12f = 1.0*i12;
-    }
-    double pwr_out=v12f*i12f;
-    double pwr_in=v48f*(i48f-CURRENT_CONTROL_OFFSET);
+    double pwr_out=dvals.v12f*dvals.i12f;
+    double pwr_in=dvals.v48f*(dvals.i48f-CURRENT_CONTROL_OFFSET);
     double pwr_eff=100*pwr_out/pwr_in;
     
-    sprintf(strbuf, "V48=%2.1f, I48=%3.1f | V24=%2.1f, I24=%3.1f | V12=%2.1f, I12=%3.1f    \r\n", v48f, i48f, v24f, i24f, v12f, i12f);
+    sprintf(strbuf, "V48=%2.1f, I48=%3.1f | V24=%2.1f, I24=%3.1f | V12=%2.1f, I12=%3.1f    \r\n", dvals.v48f, dvals.i48f, dvals.v24f, dvals.i24f, dvals.v12f, dvals.i12f);
     //sprintf(strbuf, "V48=%2.1f, I48=%2.2f | V24=%2.1f, I24=%2.2f | V12=%2.1f, I12=%2.2f || loop=%d    \r\n", v48f, i48f, v24f, i24f, v12f, i12f, loopTime);
     sendSerial(strbuf);
     sprintf(strbuf, "Power Out = %4.1f W, Power In = %4.1f W     \r\n", pwr_out, pwr_in);
@@ -93,7 +74,6 @@
     sendSerial(strbuf);
     sprintf( strbuf, "%c[30m", 27 ); // ESC=27, White Text
     sendSerial(strbuf);
-    //sprintf(strbuf, "thermCode=%d, binCode=%d", thermCode[17], binCode[6]);
     sprintf(strbuf, "wr_out_code=%d, en_out_code=%d    ", wr_out_code, en_out_code);
     sendSerial(strbuf);
 }
@@ -101,7 +81,7 @@
 /*******************************************************************************
  updateTerminal - Save cursor, write data, restore cursor.
 *******************************************************************************/
-void updateTerminal(void){
+void updateTerminal(struct adcValues avals){
     //get cursor pos, store in CUR_POS
     sprintf( strbuf, "%c7", 27 ); // ESC=27, Save cursor position = [s
     sendSerial(strbuf);
@@ -109,7 +89,7 @@
     sprintf( strbuf, "%c[3;0f", 27 ); // ESC=27, Move cursor position = [line;columnf
     sendSerial(strbuf);
     //write data
-    refreshData();
+    refreshData(avals);
     //move cursor to CUR_POS
     sprintf( strbuf, "%c8", 27 ); // ESC=27, Save cursor position = [s
     sendSerial(strbuf);
@@ -144,7 +124,8 @@
     sprintf( strbuf, "%c[30m", 27 ); // ESC=27, White Text
     sendSerial(strbuf);
     
-    refreshData();
+    struct adcValues avals = getADCresults();
+    refreshData(avals);
     
     sprintf(strbuf, "\r\n MULT");
     sendSerial(strbuf);
@@ -173,14 +154,6 @@
     switch(menuType)
     {
       case  MENU_DCM1: strcpy(strMenu,"DCM1"); break;
-      //case  MENU_DIFFERENTIAL: strcpy(strMenu,"DIFF"); break;
-      //case  MENU_SINGLE: strcpy(strMenu,"SINGLE"); break;
-      //case  MENU_DUAL: strcpy(strMenu,"DUAL"); break;
-      //case  MENU_INVERT: strcpy(strMenu,"INVERT"); break;
-      //case  MENU_SETTINGS: strcpy(strMenu,"SET"); break;
-      //case  MENU_SETTINGS_CHAN1: strcpy(strMenu,"SET CHAN1"); break;
-      //case  MENU_SETTINGS_CHAN2: strcpy(strMenu,"SET CHAN2"); break;
-      //case  MENU_SETTINGS_CLOCK: strcpy(strMenu,"SET CLOCK"); break;
       case  MENU_CALIBRATE: strcpy(strMenu,"CAL"); break;
       case  MENU_TEST: strcpy(strMenu,"TEST"); break;
       case  MENU_MAIN: strcpy(strMenu,"MAIN"); break;