Re: Fehlfunktion der Station? Kategorie: Verschiedenes (von André H. - 10.08.2004 10:42) | ||
Als Antwort auf Re: Fehlfunktion der Station? von Michael - 10.08.2004 1:34 | ||
| ||
Hallo Michael, Du hattest geschieben, da� Du die aktuellen Dateien nutzt. Da Du aber station_io und station_lcd ansprichst, ist dies auf jeden Fall nicht der Fall. Benutze einmal stports.c2, stkeyb.c2 und lcdext.c2. Diese Dateien sind u.a. alle im aktuellen ServicePack enthalten. Die Conrad Module station_io.c2 und station_lc.c2 sind alle ein bi�chen buggy. Au�erdem, benutze bitte bei Quellcode immer die code-Tags, damit dieser auch richtig abgebildet wird und besser lesbar ist. Denn ansonsten kann es gerade bei Verwendung des Kleiner-Zeichens passieren, da� der Quellcode verstümmelt wird, da Abschitte als HTML-Tags fehlinterpretiert werden. Nun aber wieder zu Deinem Problem: Du hast einen grundlegenden Fehler in Deiner Berechnung: (siehe auch FAQs: "Ich bekomme bei Berechnungen mit Long/Float-Werten falsche Ergebnisse.") long sec1, sec2; sec1 = (zeit1.hour * 60 + zeit1.minute)*60 + zeit1.second; sec2 = (zeit2.hour * 60 + zeit2.minute)*60 + zeit2.second; Du sprengst den Wertebereich der Variablen. Berechnungen laufen immer als Integer ab, wenn kein grö�erer Wertetyp beteiligt ist. Auch Wenn Du das Ergebnis in einen Longwert speicherst, so wird es hier immer im Bereich von -32768 bis +32767 bleiben. Das ist auch der Grund für die zuverlässige Bewässungen um 0:47:25. Stelle die Bereichung so um, dann funzts: long sec1, sec2; sec1 = zeit1.hour * 60 + zeit1.minute; sec1 = sec1*60 + zeit1.second; sec2 = zeit2.hour * 60 + zeit2.minute; sec2 = sec2*60 + zeit2.second; MfG André H. Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: Re: Fehlfunktion der Station? (von Michael - 10.08.2004 14:56) |