Na heel wat puzelen en lezen ben ik tot het volgende gekomen.
Ik heb in de Code toch gekozen voor float
Omdat de eerste waarde echt in halve graden ingesteld moet kunnen worden.
Ik heb voor de setup (zei het verkeerd eerder ik bedoelde eindelijk ook voor de setup)
gedifinieerd
float nieuwWaardeV=87.5;
float TempV;
Ik heb in de code het stukje op regel 183 in mm=6 weggehaald.
Als ik dit niet deed,
was mijn basis temp niet 87.5 maar kwam daar 0.00 te staan.
Die kon ik wel verhogen naar 0.50, maar ik wil beginnen vanaf een standaard voor ingesteld getal/Temperatuur
namelijk (87.5) graden.
de code is zo geworden in mm=6
if (mm ==6) // Zitten we in menu mode 6 ?
{ // 6; We gaan het menu afbeelden
lcd.clear();
lcd.setCursor(0,0); // Zet de cursor op de eerste regel op de eerste positie
lcd.print("VOORLOOP TEMPERATUUR");
lcd.setCursor(1,1); // Zet de cursor op de tweede regel op de tweede positie.
lcd.print(" INSTELLEN:");
lcd.setCursor(1,2); // Zet de cursor op de derde regel op de tweede positie.
lcd.print(" 87"); // Zet een testtekst neer
lcd.print((char)223); //Print het graden symbooltje
lcd.print("C");
lcd.setCursor(0,3); // Zet de cursor op de vierde regel op de eerste positie
lcd.print("<Esc> <+/-> <OK>"); // Zet de tekst neer: "Press<OK>"
// deze regel heb ik verwijderd anders staat er 0.00 ipv 87.5 // We hebben ons bedacht en willen de nieuwe waarde niet gebruiken.Daarom word deze eerst terug gezet naar de al aanwezige waarde (anders gaat het de volgende keer fout).
mm = 7;
} // Einde 6; het scherm voor menu mode 7 is gemaakt, en we hebben al doorgeschakeld naar mode 7
if (mm ==7)
{
lcd.setCursor(1,2); // Zet de cursor op de derde regel op de tweede positie.
lcd.print(" "); // Wis oude waarde
lcd.setCursor(6,2); // Zet de cursor op de derde regel op de zevende positie.
lcd.print(nieuwWaardeV); // Dusss..
if (KeyDet){ // Het volgende word uitgevoerd omdat we een nieuwe toets hebben gezien, anders overgeslagen
KeyDet = 0;
if (key ==Esc) { // Wanneer toets (3) "Esc" werd geduwd
Item = 1; // Zet Item terug, anders zouden we per ongeluk het menu de voelgnde keer op de verkeerde plaats binnenkomen en er gelijk weer uit raken voor we er goed en wel in zijn.
mm = 4; // Zet menu mode 1 menu terug zodat we het volgende "rondje" dit menu hebben verlaten
} // Sluit Instellingen Esc
if (key ==Omhoog) { // Wanneer toets Omhoog werd geduwd
nieuwWaardeV = nieuwWaardeV +0.5; // Doe iets met de bijbehorende waarde
} // Sluit Instellingen Omhoog
if (key ==Omlaag) { // Wanneer toets Omlaag werd geduwd
nieuwWaardeV = nieuwWaardeV -0.5; // Doe iets met de bijbehorende waarde
} // Sluit Instellingen Omhoog
if (key ==OK) { // Wanneer toets Omhoog werd geduwd
TempV = nieuwWaardeV;
mm = 4; // Zet menu mode 1 menu terug zodat we het volgende "rondje" dit menu hebben verlaten
} // Sluit Instellingen OK
} // -- Sluit KeyDet --
} // -- Sluit mm 7 --
// Vanuit mm 7 kunnen we alleen terug naar mm 4 en 5, we kunnen niet verder naar mm 8, dat kan alleen vanuit mm 4
ik heb in dit stukje code
Het volgende toegevoegd om te kijken of TempV inderdaad veranderd in de ingestelde temp.
En niet als er op esc gedrukt word zoals je voorstelde.
if (mm ==12) // Zitten we in menu mode 12 ?
{ // We gaan het menu afbeelden
lcd.clear(); // Wis het display zodat we klaar zijn voor het normale scherm
lcd.setCursor(0,0); // Ik ben er niet helemaal zeker van dat we die cursor echt al terug moeten zetten
lcd.print("3) -INSTELLINGEN-");
lcd.setCursor(1,1); // Tweede regel, tweede positie
lcd.print(" TOLLERANTIE INST.");
lcd.setCursor(1,2); // Derde regel, tweede positie
lcd.print(TempV); // Om te kontroleren of ingestelde tijd goed door komt met esc en ok duwen
lcd.setCursor(0,3); // Derde regel, tweede positie
lcd.print("<Esc> <+/-> <OK>");
mm = 13; // Het menu is gemaakt, nu gaan we naar de volgende stap, namelijk bediening ervan
} // Sluit MM 12; het menu is gemaakt
Ik zit alleen nog met het volgende.
Als ik nu de arduino reset of uitzet gaat hij weer naar de waarde 87.5.
Ik zou dit graag hebben in de ingestelde waarde.
Ook na reset en uitzetten.
Wel zou dit moeten na in het menu te kiezen voor het terug zetten naar fabrieks gegevens.
Zou dit mogelijk zijn?