Console Serial IO con display OLED e seriale asincrona
Dependencies: mbed BufferedSerial AserialIOFuncLib SSD1306 TerminalPlusV2
Fork of SerialIO by
Console Serial IO con display OLED e seriale asincrona
Diff: choiceFunctions.h
- Revision:
- 42:8ca8ff1ab387
- Parent:
- 41:fb612a3936fb
- Child:
- 44:d8c12d28f3f2
--- a/choiceFunctions.h Sat Jan 09 00:53:41 2016 +0000 +++ b/choiceFunctions.h Thu Jan 14 22:06:58 2016 +0000 @@ -55,15 +55,17 @@ } -void writeFunctionVal(string strIn) +void writeFunctionVal(string strIn, int fullstampa=1) { //scrivi a video i valori funzione int idx=trovaIndiceFunzione(strIn); //stampo if (idx<50) { //non dovrebbe servire - term.formatPrintf(fnzAdd.string2char(fnzAdd.i2s(function_val[idx][2])),50,16,10); //min - term.formatPrintf(fnzAdd.string2char(fnzAdd.i2s(function_val[idx][5])),60,16,10); //start - term.formatPrintf(fnzAdd.string2char(fnzAdd.i2s(function_val[idx][3])),70,16,10); //max + if (fullstampa==1) { + term.formatPrintf(fnzAdd.string2char(fnzAdd.i2s(function_val[idx][2])),50,16,10); //min + term.formatPrintf(fnzAdd.string2char(fnzAdd.i2s(function_val[idx][5])),60,16,10); //start + term.formatPrintf(fnzAdd.string2char(fnzAdd.i2s(function_val[idx][3])),70,16,10); //max + } term.formatPrintf(fnzAdd.string2char(fnzAdd.i2s(function_val[idx][6])),70,4+funcidx,10); //valore attuale di fianco alla riga } } @@ -207,26 +209,47 @@ //************************ Random Out -bool RfuncOut(string func, string funcnum, string param) +bool RfuncOut(string func,string sstr) { bool errp=1; - if (funcnum=="1") { - if (param=="on ") { - term.formatPrintf("ON \n",61,8,99,1); //p22 - ardser.printf(fnzAdd.string2char(fnzAdd.addEOS("R11\r"))); - printDisp(dispType,"Random On \n\r"); - randomActivate=true; - errp=0; - } else if (param=="off") { - term.formatPrintf("OFF\n",61,8,99,1); //p22 - ardser.printf(fnzAdd.string2char(fnzAdd.addEOS("R10\r"))); - printDisp(dispType,"Random OFF\n\r"); - randomActivate=false; - errp=0; - } - } - term.formatPrintf("\n",61,p52,99,1); //p52 - return errp; + string funcc; + funcc=sstr.substr(1,3); + + if (funcc=="on ") { + term.formatPrintf(fnzAdd.string2char(fnzAdd.addEOS("On")),39,p17,10,1); + ardser.printf(fnzAdd.string2char(fnzAdd.addEOS("ron\r"))); + printDisp(dispType,"Random On \n\r"); + randomActivate=true; + } else { + term.formatPrintf(fnzAdd.string2char(fnzAdd.addEOS("Off")),39,p17,10,1); + ardser.printf(fnzAdd.string2char(fnzAdd.addEOS("roff\r"))); + printDisp(dispType,"Random OFF\n\r"); + randomActivate=false; + } + errp=0; + return errp; +} + +//************************ Sensori Out +bool sensorOut(string func,string sstr) +{ + bool errp=1; + string funcc; + funcc=sstr.substr(1,3); + + if (funcc=="on ") { + // term.formatPrintf(fnzAdd.string2char(fnzAdd.addEOS("On")),39,p17,10,1); ///mettere a video!!!1 + ardser.printf(fnzAdd.string2char(fnzAdd.addEOS("son\r"))); + printDisp(dispType,"Sensor On \n\r"); + randomActivate=true; + } else { + // term.formatPrintf(fnzAdd.string2char(fnzAdd.addEOS("Off")),39,p17,10,1); ///mettere a video!!!1 + ardser.printf(fnzAdd.string2char(fnzAdd.addEOS("soff\r"))); + printDisp(dispType,"Sensor OFF\n\r"); + randomActivate=false; + } + errp=0; + return errp; } //********************* Start @@ -260,9 +283,13 @@ bool errp=1; string funcc; funcc=sstr.substr(1,1); - if ((funcc>="0") && (funcc<="9")) { - errp=0; - } + + term.formatPrintf("+\n",21,p51,8,1); //p51 + term.formatPrintf("+\n",61,p52,99,1); //p52 + ardser.printf("+\r"); + printDisp(dispType,"Add Value\n\r"); + + errp=0; return errp; } @@ -273,9 +300,13 @@ bool errp=1; string funcc; funcc=sstr.substr(1,1); - if ((funcc>="0") && (funcc<="9")) { - errp=0; - } + + term.formatPrintf("-\n",21,p51,8,1); //p51 + term.formatPrintf("-\n",61,p52,99,1); //p52 + ardser.printf("-\r"); + printDisp(dispType,"Sub Value\n\r"); + + errp=0; return errp; } @@ -412,6 +443,7 @@ idx=trovaIndiceFunzione(sstr.substr(3,1)+"."+sstr.substr(4,1)); } function_val[idx][2+atoi(fnzAdd.string2char(sstr.substr(5,1)))] =vval; //tipo + if ((sstr.substr(5,1)=="4") || (status==true)) writeFunctionVal(sstr.substr(3,1)+"."+sstr.substr(4,1),0); //stampa solo il 4. da rivedere //errp=0; } return errp;