Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Wichtig: Bevor Du wegen einem Problem mit der CC2 postest, stelle sicher, daß Du
die neueste OS-Version, die neuseste Compiler-DLL und die neuesten Modulversionen benutzt!
Beachte, daß sich auf der CD zur CC2-Unit/Station auch jetzt noch die ältesten Dateien befinden!
Es gelten folgende Anleitung und Regeln: Regeln CC2Net.de-Forum
Zurück zum Artikel  (Blaue Felder sind Pflichtfelder)


Name:   UserID: 
 E-Mail:
Kategorie
Betreff
Homepage:
Link-Titel:
Link-URL:
Cookie für Name, UserID, E-Mail, Homepage-URL setzen
(Erspart die Neueingabe bei Beiträgen und Antworten)
(Zum Löschen des Cookies hier klicken)
Ich nutze:
C-Control II Unit
C164CI-Controllerboard
C-Control II Station
CCRP5 mit CC2-Unit (Conrad Roboter)
CC2-Application-Board
CC2-StarterBoard
CC2-ReglerBoard
eigenes Board
original OS     OSOPT_V2     OSOPT V3.0 OSOPT V3.1

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
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB