Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Diff: src/command.cpp
- Revision:
- 33:6c7364ea360f
- Parent:
- 31:be17caf56d22
- Child:
- 34:419242dc004d
diff -r 05a15c208bfb -r 6c7364ea360f src/command.cpp
--- a/src/command.cpp Wed Mar 06 23:37:45 2019 +0000
+++ b/src/command.cpp Thu Aug 22 15:38:50 2019 +0000
@@ -37,11 +37,88 @@
#include "boards.h"
#include "menu.h"
#include "command.h"
+#include "SOFBlock.h"
+#include "adc.h"
+uint8_t *storo;
+char storoBuild[50], storoFrag[10];
+char storoSpace[2] = ":";
unsigned int boardsActive = ALLON;
unsigned int boardMults = 32;
-unsigned int commandData;
+double commandData;
+unsigned int section;
+unsigned int fort;
+unsigned int select;
+double VOLTAGE_48_ACTUAL_VALUE = 1.51;
+double VOLTAGE_24_ACTUAL_VALUE = 1.55;
+double VOLTAGE_12_ACTUAL_VALUE = 1.65;
+double VOLTAGE_48_OFFSET = 0;
+double VOLTAGE_24_OFFSET = 0;
+double VOLTAGE_12_OFFSET = 0;
+int Vloc = 0;
+int Aloc = 0;
+double VOLTAGE_CAL_1;
+double VOLTAGE_CAL_2;
+double VOLTAGE_CAL_3;
+double VSTORE_1;
+double VSTORE_2;
+double VSTORE_3;
+struct adcValues adcVals;
+struct displayValues dvals;
+signed int CURRENT_48_DIV_FACTOR5 = -370;
+signed int CURRENT_48_DIV_FACTOR4 = -570;
+signed int CURRENT_48_DIV_FACTOR3 = -740;
+signed int CURRENT_48_DIV_FACTOR2 = -948;
+signed int CURRENT_48_DIV_FACTOR1 = -1541;
+signed int CURRENT_48_DIV_FACTOR0 = -1610;
+
+unsigned int CURRENT_48_DIV_THRESH5 = 3000;
+unsigned int CURRENT_48_DIV_THRESH4 = 2500;
+unsigned int CURRENT_48_DIV_THRESH3 = 2000;
+unsigned int CURRENT_48_DIV_THRESH2 = 1500;
+unsigned int CURRENT_48_DIV_THRESH1 = 500;
+
+signed int CURRENT_24_DIV_FACTOR = -376;
+
+signed int CURRENT_12_DIV_FACTOR5 = -188;
+signed int CURRENT_12_DIV_FACTOR4 = -186;
+signed int CURRENT_12_DIV_FACTOR3 = -182;
+signed int CURRENT_12_DIV_FACTOR2 = -177;
+signed int CURRENT_12_DIV_FACTOR1 = -179;
+signed int CURRENT_12_DIV_FACTOR0 = -175;
+
+unsigned int CURRENT_12_DIV_THRESH5 = 1600;
+unsigned int CURRENT_12_DIV_THRESH4 = 800;
+unsigned int CURRENT_12_DIV_THRESH3 = 600;
+unsigned int CURRENT_12_DIV_THRESH2 = 400;
+unsigned int CURRENT_12_DIV_THRESH1 = 200;
+
+unsigned int CURRENT_REF_1;
+unsigned int CURRENT_REF_2;
+unsigned int CURRENT_REF_3;
+unsigned int CURRENT_REF_4;
+unsigned int CURRENT_REF_5;
+unsigned int CURRENT_REF_6;
+double CURRENT_IN_1;
+double CURRENT_IN_2;
+double CURRENT_IN_3;
+double CURRENT_IN_4;
+double CURRENT_IN_5;
+double CURRENT_IN_6;
+
+double CURRENT_12_CORRECTION0;
+double CURRENT_12_CORRECTION1;
+double CURRENT_12_CORRECTION2;
+double CURRENT_12_CORRECTION3;
+double CURRENT_12_CORRECTION4;
+double CURRENT_12_CORRECTION5;
extern unsigned short my12;
+char storage[50];
+
+/************* TEMPORARY WRITING BLOCK *********************/
+
+SOFWriter writer;
+SOFReader reader;
/************* FILE SCOPE VARIABLES ************************/
char setvalue = FALSE;
@@ -481,7 +558,7 @@
tok = strtok(commandStringBuf, "=");
strcpy(commandString, tok);
tok = strtok(NULL, "=");
- commandData = atoi(tok);
+ commandData = atof(tok);
}
else{
strcpy(commandString, commandStringBuf);
@@ -583,6 +660,7 @@
{
sprintf(strbuf, " %d", boardMults);
sendSerial(strbuf);
+
}
else if (running == 1)
{
@@ -599,7 +677,538 @@
showRangeError(1, boardMults, 0.0);
}
}
+ }/*
+ else if (!strcmp(commandString, "PERM"))
+ {
+ if (readback)
+ {
+ reader.open(sector_index);
+ //printf("data %d bytes at %p :\r\n", reader.get_data_size(), reader.get_physical_data_addr());
+ //printf("%.*s\r\n", reader.get_data_size(), reader.get_physical_data_addr());
+ storo = reader.get_physical_data_addr();
+ reader.close();
+ printf("%s\r\n", storo);
+ sprintf(storage, "%s", storo);
+ int storage_size = strlen(storage);
+ char delim[] = ":";
+ char *ptr = strtok(storage, delim);
+ if (ptr != NULL)
+ {
+ CURRENT_48_DIV_FACTOR0 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ if (ptr != NULL)
+ {
+ CURRENT_48_DIV_FACTOR1 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ if (ptr != NULL)
+ {
+ CURRENT_48_DIV_FACTOR2 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ if (ptr != NULL)
+ {
+ CURRENT_48_DIV_FACTOR3 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ if (ptr != NULL)
+ {
+ CURRENT_48_DIV_FACTOR4 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ if (ptr != NULL)
+ {
+ CURRENT_48_DIV_FACTOR5 = atoi(ptr);
+ printf("%d\r\n", CURRENT_48_DIV_FACTOR0);
+ printf("%d\r\n", CURRENT_48_DIV_FACTOR1);
+ printf("%d\r\n", CURRENT_48_DIV_FACTOR2);
+ printf("%d\r\n", CURRENT_48_DIV_FACTOR3);
+ printf("%d\r\n", CURRENT_48_DIV_FACTOR4);
+ printf("%d\r\n", CURRENT_48_DIV_FACTOR5);
+ } else {
+ printf("Insufficient variables found.");
+ }
+ } else {
+ printf("Infussicient variables found.");
+ }
+ } else {
+ printf("Insufficient variables found.");
+ }
+ } else {
+ printf("Insufficient variables found.");
+ }
+ } else {
+ printf("Insufficient variables found.");
+ }
+ } else {
+ printf("Infufficient variables found.");
+ }
+ sendSerial(strbuf);
+
+ }
+ else if (running == 1)
+ {
+ sprintf(strbuf, " Parameters may not be updated while running!");
+ sendSerial(strbuf);
+ }
+ else
+ {
+ if(checkRange(boardMults, 0, 63) == 1){
+ writer.open(sector_index) ;
+ writer.write_data((uint8_t*) storoBuild, sizeof storoBuild);
+ writer.close();
+ testing = TRUE;
+ }else{
+ showRangeError(1, boardMults, 0.0);
+ }
+ }
}
+ else if (!strcmp(commandString, "PREP"))
+ {
+ if (readback)
+ {
+ printf("%s\r\n", storo);
+ sendSerial(strbuf);
+ }
+ else
+ {
+ if (commandData == 0)
+ {
+ memset(storoBuild, 0, sizeof storoBuild);
+ }
+ else
+ {
+ sprintf(storoFrag, "%d", commandData);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ if(checkRange(boardMults, 0, 63) == 1){
+ printf("%s\r\n", storoBuild);
+ testing = TRUE;
+ }else{
+ showRangeError(1, boardMults, 0.0);
+ }
+ }
+ }
+ }*/
+ else if (!strcmp(commandString, "SECT"))
+ {
+ if (commandData == 48)
+ {
+ section = 48;
+ }
+ else if (commandData == 24)
+ {
+ section = 24;
+ fort = 0;
+ }
+ else if (commandData == 12)
+ {
+ section = 12;
+ }
+ else {
+ printf("Input not accepted.");
+ }
+ }/*
+ else if (!strcmp(commandString, "FORT"))
+ {
+ if (readback)
+ {
+ if (fort == 0)
+ {
+ printf("Currently accessing: Div Factors \r\n");
+ }
+ else if (fort == 1)
+ {
+ printf("Currently accessing: Div Thresholds \r\n");
+ } else {
+ printf("Currently accessing: Nothing \r\n");
+ }
+ }else if (section != 24){
+ if (commandData == 0)
+ {
+ fort = 0;
+ printf("Now accessing: Div Factors \r\n");
+ }
+ else if (commandData == 1)
+ {
+ fort = 1;
+ printf("Now accessing: Div Thresholds \r\n");
+ }
+ }
+ }*/
+ else if (!strcmp(commandString, "DIAL"))
+ {
+ if (Vloc == 0)
+ {
+ if (section == 48)
+ {
+ printf("Begin Voltage 48 calibration? (Enter Dial=1 to continue)");
+ Vloc = -1;
+ }
+ else if (section == 24)
+ {
+ printf("Begin Voltage 24 calibration? (Enter Dial=1 to continue)");
+ Vloc = 7;
+ }
+ else if (section == 12)
+ {
+ printf("Begin Voltage 12 calibration? (Enter Dial=1 to continue)");
+ Vloc = 1;
+ }
+ }
+ else if (Vloc == 1)
+ {
+ if (commandData == 1)
+ {
+ printf("Enter actual output at 12V load. (ex. Dial=1.52)");
+ Vloc = 2;
+ } else{
+ printf("Calibration cancelled.");
+ Vloc = 0;
+ }
+ }
+ else if (Vloc == 2)
+ {
+ VOLTAGE_CAL_1 = commandData;
+ printf("Enter actual output at 10V load. (ex. Dial=1.08)");
+ Vloc = 3;
+ }
+ else if (Vloc == 3)
+ {
+ VOLTAGE_CAL_2 = commandData;
+ printf("Enter actual output at 8V load. (ex. Dial=0.58)");
+ Vloc = 4;
+ }
+ else if (Vloc == 4)
+ {
+ VOLTAGE_CAL_3 = commandData;
+ Vloc = 0;
+ VOLTAGE_12_ACTUAL_VALUE = (VOLTAGE_CAL_1-VOLTAGE_CAL_3)*0.4125;
+ printf("\r\n%4.2f, %4.2f", VOLTAGE_CAL_1, VOLTAGE_CAL_3);
+ VOLTAGE_12_OFFSET = VOLTAGE_CAL_1-(VOLTAGE_12_ACTUAL_VALUE*12/1.65)+((VOLTAGE_CAL_2-(VOLTAGE_12_ACTUAL_VALUE*10/1.65))*0.5);
+ printf("\r\n12V calibration completed.\r\n");
+ printf("%4.2f, %4.2f\r\n", VOLTAGE_12_ACTUAL_VALUE, VOLTAGE_12_OFFSET);
+ }
+ else if (Vloc == -1)
+ {
+ if (commandData == 1)
+ {
+ printf("\r\n Enter actual output at 48V load. (ex. Dial=1.52) \r\n");
+ Vloc = -2;
+ } else{
+ printf("Calibration cancelled.");
+ Vloc = 0;
+ }
+ }
+ else if (Vloc == -2)
+ {
+ VOLTAGE_CAL_1 = commandData;
+ printf("\r\n Enter actual output at 44V load. (ex. Dial=1.08) \r\n");
+ Vloc = -3;
+ }
+ else if (Vloc == -3)
+ {
+ VOLTAGE_CAL_2 = commandData;
+ printf("\r\n Enter actual output at 40V load. (ex. Dial=0.58) \r\n");
+ Vloc = -4;
+ }
+ else if (Vloc == -4)
+ {
+ VOLTAGE_CAL_3 = commandData;
+ Vloc = 0;
+ VOLTAGE_48_ACTUAL_VALUE = (VOLTAGE_CAL_1-VOLTAGE_CAL_3)*0.20625;
+ printf("\r\n%4.2f, %4.2f", VOLTAGE_CAL_1, VOLTAGE_CAL_3);
+ VOLTAGE_48_OFFSET = VOLTAGE_CAL_1-(VOLTAGE_12_ACTUAL_VALUE*48/1.65)+((VOLTAGE_CAL_2-(VOLTAGE_12_ACTUAL_VALUE*44/1.65))*0.5);
+ printf("\r\n48V calibration completed.\r\n");
+ printf("%4.2f, %4.2f\r\n", VOLTAGE_12_ACTUAL_VALUE, VOLTAGE_12_OFFSET);
+ }
+ else if (Vloc == 7)
+ {
+ if (commandData == 1)
+ {
+ printf("\r\n Enter actual output at 24V load. (ex. Dial=1.52) \r\n");
+ Vloc = 13;
+ } else{
+ printf("Calibration cancelled.");
+ Vloc = 0;
+ }
+ }
+ else if (Vloc == 13)
+ {
+ VOLTAGE_CAL_1 = commandData;
+ printf("\r\n Enter actual output at 21V load. (ex. Dial=1.08) \r\n");
+ Vloc = 21;
+ }
+ else if (Vloc == 21)
+ {
+ VOLTAGE_CAL_2 = commandData;
+ printf("\r\n Enter actual output at 18V load. (ex. Dial=0.58) \r\n");
+ Vloc = 42;
+ }
+ else if (Vloc == 42)
+ {
+ VOLTAGE_CAL_3 = commandData;
+ Vloc = 0;
+ VOLTAGE_24_ACTUAL_VALUE = (VOLTAGE_CAL_1-VOLTAGE_CAL_3)*0.275;
+ printf("\r\n%4.2f, %4.2f", VOLTAGE_CAL_1, VOLTAGE_CAL_3);
+ VOLTAGE_24_OFFSET = VOLTAGE_CAL_1-(VOLTAGE_12_ACTUAL_VALUE*24/1.65)+((VOLTAGE_CAL_2-(VOLTAGE_12_ACTUAL_VALUE*21/1.65))*0.5);
+ printf("\r\n24V calibration completed.\r\n");
+ printf("%4.2f, %4.2f\r\n", VOLTAGE_12_ACTUAL_VALUE, VOLTAGE_12_OFFSET);
+ }
+ }
+ else if (!strcmp(commandString, "SCL"))
+ {
+ if (section == 48)
+ {
+ printf("Not yet implimented.");
+ }
+ else if (section == 24)
+ {
+ printf("Not yet implimented.");
+ }
+ else if (section == 12)
+ {
+ if (Aloc == 0)
+ {
+ printf("Begin Voltage 12 current calibration? (Enter Scl=1 to continue)");
+ Aloc = -1;
+ }
+ else if (Aloc == -1)
+ {
+ if (commandData == 1)
+ {
+ printf("Set current to smallest reference point(1/6). Enter actual current amount. (Ex. Scl=1.25)");
+ Aloc = -2;
+ } else{
+ printf("Calibration cancelled.");
+ Aloc = 0;
+ }
+ }
+ else if (Aloc == -2)
+ {
+ CURRENT_IN_1 = commandData;
+ adcValues adcVals = getADCresults();
+ CURRENT_REF_1 = adcVals.i12;
+ printf("Increase input current. Enter new actual input current(2/6).");
+ Aloc = -3;
+ }
+ else if (Aloc == -3)
+ {
+ CURRENT_IN_2 = commandData;
+ adcValues adcVals = getADCresults();
+ CURRENT_REF_2 = adcVals.i12;
+ printf("Increase input current. Enter new actual input current(3/6).");
+ Aloc = -4;
+ }
+ else if (Aloc == -4)
+ {
+ CURRENT_IN_3 = commandData;
+ adcValues adcVals = getADCresults();
+ CURRENT_REF_3 = adcVals.i12;
+ printf("Increase input current. Enter new actual input current(4/6).");
+ Aloc = -5;
+ }
+ else if (Aloc == -5)
+ {
+ CURRENT_IN_4 = commandData;
+ adcValues adcVals = getADCresults();
+ CURRENT_REF_4 = adcVals.i12;
+ printf("Increase input current. Enter new actual input current(5/6).");
+ Aloc = -6;
+ }
+ else if (Aloc == -6)
+ {
+ CURRENT_IN_5 = commandData;
+ adcValues adcVals = getADCresults();
+ CURRENT_REF_5 = adcVals.i12;
+ printf("Increase input current. Enter new actual input current(6/6).");
+ Aloc = -7;
+ }
+ else if (Aloc == -7)
+ {
+ CURRENT_IN_6 = commandData;
+ adcValues adcVals = getADCresults();
+ CURRENT_REF_6 = adcVals.i12;
+ Aloc = 0;
+ if ((CURRENT_REF_6 - CURRENT_12_OFFSET < 0 && CURRENT_REF_1 - CURRENT_12_OFFSET < 0 && CURRENT_REF_6 > CURRENT_REF_1)
+ || (CURRENT_REF_6 - CURRENT_12_OFFSET > 0 && CURRENT_REF_1 - CURRENT_12_OFFSET > 0 && CURRENT_REF_6 < CURRENT_REF_1))
+ {
+ CURRENT_12_DIV_THRESH5 = CURRENT_REF_1-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH4 = CURRENT_REF_2-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH3 = CURRENT_REF_3-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH2 = CURRENT_REF_4-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH1 = CURRENT_REF_5-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_FACTOR5 = (CURRENT_REF_1-CURRENT_12_OFFSET)/CURRENT_IN_1;
+ CURRENT_12_CORRECTION4 = ((CURRENT_REF_1-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR5)-CURRENT_IN_1;
+ CURRENT_12_DIV_FACTOR4 = (CURRENT_REF_2-CURRENT_REF_1)/(CURRENT_IN_2-CURRENT_IN_1);
+ CURRENT_12_CORRECTION4 = ((CURRENT_REF_2-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR4)-CURRENT_IN_2;
+ CURRENT_12_DIV_FACTOR3 = (CURRENT_REF_3-CURRENT_REF_2)/(CURRENT_IN_3-CURRENT_IN_2);
+ CURRENT_12_CORRECTION3 = ((CURRENT_REF_3-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR3)-CURRENT_IN_3;
+ CURRENT_12_DIV_FACTOR2 = (CURRENT_REF_4-CURRENT_REF_3)/(CURRENT_IN_4-CURRENT_IN_3);
+ CURRENT_12_CORRECTION2 = ((CURRENT_REF_4-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR2)-CURRENT_IN_4;
+ CURRENT_12_DIV_FACTOR1 = (CURRENT_REF_5-CURRENT_REF_4)/(CURRENT_IN_5-CURRENT_IN_4);
+ CURRENT_12_CORRECTION1 = ((CURRENT_REF_5-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR1)-CURRENT_IN_5;
+ CURRENT_12_DIV_FACTOR0 = (CURRENT_REF_6-CURRENT_REF_5)/(CURRENT_IN_6-CURRENT_IN_5);
+ CURRENT_12_CORRECTION0 = ((CURRENT_REF_6-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR0)-CURRENT_IN_6;
+ }
+ else if ((CURRENT_REF_6 - CURRENT_12_OFFSET < 0 && CURRENT_REF_1 - CURRENT_12_OFFSET < 0 && CURRENT_REF_6 < CURRENT_REF_1)
+ || (CURRENT_REF_6 - CURRENT_12_OFFSET > 0 && CURRENT_REF_1 - CURRENT_12_OFFSET > 0 && CURRENT_REF_6 > CURRENT_REF_1))
+ {
+ CURRENT_12_DIV_THRESH5 = CURRENT_REF_5-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH4 = CURRENT_REF_4-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH3 = CURRENT_REF_3-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH2 = CURRENT_REF_2-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_THRESH1 = CURRENT_REF_1-CURRENT_12_OFFSET;
+ CURRENT_12_DIV_FACTOR0 = (CURRENT_REF_1-CURRENT_12_OFFSET)/CURRENT_IN_1;
+ CURRENT_12_CORRECTION0 = 0;
+ CURRENT_12_DIV_FACTOR1 = (CURRENT_REF_2-CURRENT_REF_1)/(CURRENT_IN_2-CURRENT_IN_1);
+ CURRENT_12_CORRECTION1 = ((CURRENT_REF_2-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR1)-CURRENT_IN_2;
+ CURRENT_12_DIV_FACTOR2 = (CURRENT_REF_3-CURRENT_REF_2)/(CURRENT_IN_3-CURRENT_IN_2);
+ CURRENT_12_CORRECTION2 = ((CURRENT_REF_3-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR2)-CURRENT_IN_3;
+ CURRENT_12_DIV_FACTOR3 = (CURRENT_REF_4-CURRENT_REF_3)/(CURRENT_IN_4-CURRENT_IN_3);
+ CURRENT_12_CORRECTION3 = ((CURRENT_REF_4-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR3)-CURRENT_IN_4;
+ CURRENT_12_DIV_FACTOR4 = (CURRENT_REF_5-CURRENT_REF_4)/(CURRENT_IN_5-CURRENT_IN_4);
+ CURRENT_12_CORRECTION4 = ((CURRENT_REF_5-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR4)-CURRENT_IN_5;
+ CURRENT_12_DIV_FACTOR5 = (CURRENT_REF_6-CURRENT_REF_5)/(CURRENT_IN_6-CURRENT_IN_5);
+ CURRENT_12_CORRECTION5 = ((CURRENT_REF_6-CURRENT_12_OFFSET)/CURRENT_12_DIV_FACTOR5)-CURRENT_IN_6;
+ }
+ printf("\r\n12V current calibration completed.\r\n");
+ //printf("%4.2f, %4.2f\r\n", VOLTAGE_12_ACTUAL_VALUE, VOLTAGE_12_OFFSET);
+ }
+ }
+ }
+ else if (!strcmp(commandString, "RCRD"))
+ {
+ if(checkRange(boardMults, 0, 63) == 1){
+ sprintf(storoFrag, "%4.2f", VOLTAGE_48_ACTUAL_VALUE);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", VOLTAGE_48_OFFSET);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", VOLTAGE_24_ACTUAL_VALUE);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", VOLTAGE_24_OFFSET);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", VOLTAGE_12_ACTUAL_VALUE);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", VOLTAGE_12_OFFSET);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_THRESH1);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_THRESH2);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_THRESH3);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_THRESH4);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_THRESH5);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_FACTOR0);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", CURRENT_12_CORRECTION0);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_FACTOR1);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", CURRENT_12_CORRECTION1);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_FACTOR2);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", CURRENT_12_CORRECTION2);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_FACTOR3);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", CURRENT_12_CORRECTION3);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_FACTOR4);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", CURRENT_12_CORRECTION4);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%d", CURRENT_12_DIV_FACTOR5);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ sprintf(storoFrag, "%4.2f", CURRENT_12_CORRECTION5);
+ strcat(storoBuild, storoFrag);
+ strcat(storoBuild, storoSpace);
+ writer.open(sector_index) ;
+ writer.write_data((uint8_t*) storoBuild, sizeof storoBuild);
+ writer.close();
+ testing = TRUE;
+ }else{
+ showRangeError(1, boardMults, 0.0);
+ }
+ }
+ else if (!strcmp(commandString, "RTRV"))
+ {
+ reader.open(sector_index);
+ storo = reader.get_physical_data_addr();
+ reader.close();
+ sprintf(storage, "%s", storo);
+ int storage_size = strlen(storage);
+ char delim[] = ":";
+ char *ptr = strtok(storage, delim);
+ VOLTAGE_48_ACTUAL_VALUE = atof(ptr);
+ ptr = strtok(NULL, delim);
+ VOLTAGE_48_OFFSET = atof(ptr);
+ ptr = strtok(NULL, delim);
+ VOLTAGE_24_ACTUAL_VALUE = atof(ptr);
+ ptr = strtok(NULL, delim);
+ VOLTAGE_24_OFFSET = atof(ptr);
+ ptr = strtok(NULL, delim);
+ VOLTAGE_12_ACTUAL_VALUE = atof(ptr);
+ ptr = strtok(NULL, delim);
+ VOLTAGE_12_OFFSET = atof(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_THRESH1 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_THRESH2 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_THRESH3 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_THRESH4 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_THRESH5 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_FACTOR0 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_CORRECTION0 = atof(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_FACTOR1 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_CORRECTION1 = atof(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_FACTOR2 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_CORRECTION2 = atof(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_FACTOR3 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_CORRECTION3 = atof(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_FACTOR4 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_CORRECTION4 = atof(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_DIV_FACTOR5 = atoi(ptr);
+ ptr = strtok(NULL, delim);
+ CURRENT_12_CORRECTION5 = atof(ptr);
+ printf("Values retreived. \r\n");
+ }
else if (!strcmp(commandString, "MY12"))
// MULT is used to get/set the en_out value.
// The integer value of boardMults is used to change en_out via setBoardWeights(boardMults).
@@ -687,7 +1296,7 @@
testing = FALSE;
my12 = 0;
}
- else if(!strcmp(commandString, "CAL"))
+ else if(!strcmp(commandString, "RAW"))
{
if (running == 1)
{
@@ -701,7 +1310,7 @@
menuRedraw(NO_PROMPT);
}
}
- else if(!strcmp(commandString, "UNCAL"))
+ else if(!strcmp(commandString, "COOK"))
{
if (running == 1)
{