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 Rene, > > > > zuerst solltest Du Dir ein einheitliches und logisches Einrücken angewöhnen: > > Als Bsp.: > > <code> > > thread xy > > { > > tuedies(); > > loop > > { > > if irgendetwas > > { > > tuedies(); > > unddas(); > > } > > else > > { > > oderdas(); > > undjenes(); > > } > > > > if dies and das and solches and > > wasanderes and jenes > > { > > //... > > } > > } > > } > > </code> > > > > Man sollte beim Einrücken immer gleich erkennen, in welcher "Ebene" man ist. > > Ansonsten ist es für einem der Helfen will, umso schwerer den Code zu lesen. > > > > Nun die Anmerkungen zu Deinem Quellcode selbst: > > > > > > > > > <code>{ > > > byte month, day, hour, min, sec; // Variablen definieren und zuweisen > > > byte LED; > > > int time; > > > int number; > > > > > > lcdext.init(); > > > //stports.setLED(1,-1); <- das sollte eigentlich das LED > > > Schalten, wenn die Heizung läuft. > > > /*******************************************/ > > > /***********Zeitschaltuhr Heizlampe*********/ > > > /*******************************************/ > > > > > > loop > > > > > > { > > > wait min!=system.minute(); // Warten auf neue Minute > > > min = system.minute(); // Wenn neue Minute, dann gleichsetzen und abarbeiten > > > day = system.dow(); // täglich abarbeiten > > </code> > > system.dow() ist der Day Of Week, also Wochentag Sonntag bis Samstag (0 bis 6) > > <code> > > > > > > /**************************************/ > > > /********* Zeitdefinition *************/ > > > /**************************************/ > > > > > > if time >= 1700 and time <= 0800 // zwischen 17:00 und 08:00 > > > and day >= 1 and day <= 31 // und vom 01. bis zum 31. > > > and month >= 10 and month <= 3 // und von Monat 10 bis Monat 3 > > </code> > > Gleich zwei Dinge: > > 1. Der Wert eines Tages im Monat kann nicht außerhalb vom 1. bis 3. liegen. > > Daher ist diese Abfrage ziemlich nutzlos. > > 2. Oben hast Du den Wochentag(dow) der Variable day zugewiesen. > > Diese hat nur einen Bereich von 0 bis 6. > > Die Parameter für die Monatsabfrage können so auch nicht funktionieren. > > Ein Monat, oder allgemeiner, eine Varibale kann nie gleichzeitig einen Wert > > größergleich 10 und kleinergleich 3 haben. > > Wenn Du nur die Monate 4 bis 9 ausnehmen willst, mußt Du das so machen: > > <code>... > > and (month >= 10 or month <= 3) // und von Monat 10 bis Monat 3 > > </code> > > Alternativ mit "nand": > > <code>... > > and (month < 10 nand month > 3) // und von Monat 10 bis Monat 3 > > > > > > > > ports.set(0,1); // (Pin 41) Einschalten > > > else // sonst > > > ports.set(0,0); // (Pin 41) Ausschalten > > > > > > }; > > </code> > > Ein Semikolon nach geschweiften Klammern ist unnötig. > > Ein Semikolon schließt eine Anweisung, einen Aufruf bzw. eine Definition ab. > > <code> > > > release; > > > };</code> > > Warum schreibst Du ein "release" hier herein??? > > Release gehört zum Capture. (Semaphor) > > Dies dient bei der CC2 zur Synchronisieren von Threads bzw. zum (temporören) > > Schutz von Ressourcen vor anderen Threads. (Siehe Handbuch Kapitel "Synchronisation") > > > > MfG André H. > > Hallo André, > > vielen Dank für Deine Hilfe, das mit dem Code einrücken > werde ich mir merken. > Wird der gesamte Code denn eigentlich täglich abgearbeitet > wenn man nichts zum Abschluß schreibt, wie zum Bsp. > continue? > > Ich werde Deine Ratschläge jetzt erst mal Umsetzen, Danke > nochmal. > > Gruß Rene