Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Thomas, > Warum speicherst Du die eingaben in einem String ??? > > Mache es so: > 1.Ziffer > wert = Eingabe_Tastatur > ab 2.Ziffer > wert = (wert*10) +Eingabe_Tastatur > > So bekommst Du einen wunderbaren Integer, den > Du ins EEProm speichern kannst, und mit dem Du > auch rechnen kannst !! > Vergiß Strings im zusammenhang mit Daten !!!! > Strings sind nur für Text zugebrauchen, oder für Ausgaben. > Für die Ausgabe von Zahlen auf das ext. LCD benutzt Du > am besten die "Zahl"-Funktionen von lcdext.c2. > > Und was ist das ?? > > s=n; // String in einen Integer wandeln > > eeprom.writeint(0,256,n); //Integer in Eprom Speichern. > 1. Man kann nicht einfach Integer = String schreiben. > 2. wenn es ginge, müsste es n=s heißen ! > > Zum Verständnis, was ein String ist:(CC2) > Ein String ist nichts anderes als ein Byte-Array mit 32 Elementen. > In Element 0 bis 29 stehen die Zeichen im ASCII-Code. > An stellen ohne Zeichen steht ASCII-Code "0"(=Bytewert 0). > In Element 30 steht immer der Wert 0. > In Element 31 steht die Anzahl der Zeichen im String (0 bis 32). > > Was anderes: Beachtest Du eigentlich die Fehlermeldungen des Compilers ? > > MfG André H. > > > > Hallo Andre > > > > So, nach einigen Basteln habe ich nun Deine Funktion von dem AD592 eingebaut. > > Komme zwar mit deiner berechnung nicht klar, weil ich bei 20 °C irgendwo bei 7564 bin. > > Habe die Berechnung geändert und habe nun 200 bei 20,0°C und bekomme es als Kommazahl > > auf das LCD. Die 200 ist nun ein Integer. > > Um nun einen Wert zum vergleichen zu haben muß Ich eine Zahl zb 215 =21,5°C > > uber die Tastatur eingeben und ins Eprom speichern. Als String kann ich das auch alles wunderbar > > zusammenschreiben und ins Eprom speichern.Wenn Ich das aber nun als Interger versuche,bekomme > > ich nur 000beim auslesen des Eproms angezeigt.Der Vergleich geht garnicht.das heißt, das der Ausgang > > sofort auf Heizen schaltet , egal ob ich nun 000 oder 300 speichere. Tsoll ist 250(25,0°) Zimmertemperatur sind > > 20 °. > > Ich versteh das nicht. Bin wohl für son rechenkram zu doof. > > > > Kannst du mir da bitte noch mal helfen? > > > > hier ist ein der Programmteil; > > > > keyb2.keywert=255; > > int e1; string out; > > lcdext.clear(); > > lcdext.goto(0,0); > > lcdext.print("Alte Temperatur"); > > e1=eeprom.readint(0,256); // Integer aus Eprom lesen > > out=""; > > str.putlongf(out,e1,3); //Integer als String wandeln > > lcdext.goto(1,6); > > lcdext.print(out); // String auf LCD ausgeben. > > keyb2.keywert=255; // Hier steht immer 000 im LCD > > lcdext.goto(2,-4); > > lcdext.print("Neue Temperatur"); > > sleep 250; > > lcdext.showcursor(); > > lcdext.goto(3,0); > > s=""; //<<< ab hier soll die Zahl erzeigt werden. > > wait keyb2.keywert <=3; // Auf wert von Tastatur warten > > str.putintf(s,keyb2.keywert,1); // Erste Zahl Zusammen setzen > > lcdext.goto(3,2); > > lcdext.print(s); // Zahl auf LCD Anzeigen > > keyb2.keywert=255; > > sleep 250; > > wait keyb2.keywert <=9; //Auf Wert von Tastatur warten > > str.putintf(s,keyb2.keywert,1); // Zweite Zahl zusammen setzen > > lcdext.goto(3,2); > > lcdext.print(s); //Zahlen auf LCD anzeigen > > keyb2.keywert=255; > > sleep 250; > > wait keyb2.keywert <=9; //Auf Wert von Tastatur warten > > str.putintf(s,keyb2.keywert,1); // Dritte Zahle zusanmem setzen > > lcdext.goto(3,2); > > lcdext.print(s); //Zahlen Auf LCD anzeigen > > keyb2.keywert=255; > > sleep 250; > > wait keyb2.keywert ==100; //Warten auf * von Tastatur > > s=n; // String in einen Integer wandeln > > eeprom.writeint(0,256,n); //Integer in Eprom Speichern. > > sleep 100; > > } > > > > > > wäre sehr Dankbar. > > gruß Thomas