
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Wie gesagt, vielleicht komm ich noch auf dich zurück! Hab dir grad mein Prog per e-mail geschickt. Vielleicht kannst du mir helfen!! Gruß Andreas > Hallo Paul, > > So in etwa hab ich es mir gedacht. Habs aber leider net ganz verstanden! Probier jetzt erst mal > den Vorschlag von Manfred aus. Leuchtet mir irgendwie eher ein. > > Danke dir aber für deine Hilfe!! Vielleicht komm ich noch auf dich zurück! > > Gruß Andreas > > > Hallo Andreas, > > > > wie wäre es mit einer Variable, in der Du Dir merkst, ob eine Prioritäts-Situation eingetreten ist? > > > > Das könnte ungefähr so aussehen... (quick and dirty, nur um zu zeigen wie es gehen könnte) > > > > define prio byte > > prio = 0 > > .... > > #loop > > ' mit jedem Tastendruck wird Bit 1 von prio ein-/ausgeschaltet > > if port[1] = on then prio = prio xor 1 > > > > ' wenn die Temperatur einen kritischen Wert überschreitet Bit 2 von prio einschalten (sonst Bit 2 aus) > > if temperatur > XX then prio = prio or 2 else prio = prio and 253 > > > > ' wenn ein Zeitfenster erreicht wird Bit 3 von prio einschalten (sonst Bit 3 aus) > > if (hour >= 12 and hour <= 15) then prio = prio or 4 else prio = prio and 251 > > > > ' jetzt die priorisierte Abfrage > > if (prio and 1) = 0 then goto keine_taste > > ' hier der Programmteil für das was bei einem Tastendruck passieren soll > > ... > > goto loop > > > > #keine_taste > > if (prio and 2) = 0 then keine_temp > > ' hier der Programmteil für das was bei erreichen der kritischen Temperatur passieren soll > > ... > > goto loop > > > > #keine_temp > > if (prio and 4) = 0 then goto loop > > ' hier der Programmteil für das was bei erreichen eines Zeitfensters passieren soll > > ... > > goto loop > > > > > > Ist der Programmteil jeweils identisch, kannst Du natürlich mit einem Unterprogramm arbeiten > > und es per gosub jeweils aufrufen. Ich denke die Vorgehensweise ist klar, so daß Du die > > Priorisierung der Lüfter-Steuerung selber machen kannst. > > > > Grüße, Paul > > > > > Hallo, hallo! > > > > > > Ich bin Anfänger und arbeite mich so langsam in die Programierung in Basic ein. Klappt eigentlich > > > auch ganz gut! Jetzt steh ich vor einem Problem und komme einfach nicht weiter! > > > > > > Mein kleines Programm soll folgendes können: > > > > > > 1. Lampen nach Zeit steuern (Zeitschaltuhr) > > > 2. bei zu hohen Temperaturen eine Lampe auschalten und bei noch höheren Temperaturen einen > > > Lüfter anschalten > > > 3. alles manuell über die Tasten der CStation an- bzw. ausschalten > > > > > > Jede Funktion einzeln für sich funktioniert auch Bestens. Wenn ich sie jedoch zusammenfüge, dann > > > kann ich die Tasten nicht mehr Bedienen, da er ja sofort die Lampen wieder einschaltet, wegen > > > der Zeitschaltuhr. Genauso mit der Temperatur! Kann man irgendwie Prioritäten setzen, > > > so dass die Tasten die höchste Priorität haben, dann die Temperatur und danach die Zeit? > > > Ich müßte irgendwie speichern, dass ich die Taste gedrückt habe, damit er die Zeit und Temp. nicht > > > abfragt! Aber WIE??? > > > > > > Ich bin für jede Hilfe dankbar!! > > > Gruß Andreas |
| Antwort schreiben |