forellengarten
Level-1
- Beiträge
- 217
- Reaktionspunkte
- 1
-> Hier kostenlos registrieren
Erste Programmversion - Licht schalten
Ich würde gerne eine allgemeine Frage in den Raum schmeißen und bitte um eure Meinung, ob das der "richtige" Lösungsweg ist:
Ich schreibe ein MAIN-programm, welches z.B alle 100ms läuft (=Task) und sämtliche Schalter einließt. Gesetzte Taster werden als globale Variable abgelegt (oder z.b in einem Array). Auf diese Weise verhindere ich, daß das Programm lange in einer Schleife "hängt", nur weil ein Taster lange gedrückt wird.
Jetzt nehme ich einen 2ten Task, der wird z.B alle 300ms ausgeführt. Er überprüft die globalen variablen. ist eine Gesetzt, so schaltet das entsprechende Licht.
Im Falle eines Dimmers besteht aber noch immer das Problem, daß auch der 2te Task evtl. lange blockiert ist. Aber wenigstens werden alle Tasterinputs erkannt, da das MAIN-Programm immer gleichschnell durchläuft, egal was es letztendlich schaltet.
Hoffe die Frage / meine Idee der Struktur ist verständlich. Um euch nicht zu sehr mit meinem Problem aufzuhalten, reicht mir ein kurzes ja, so macht man das oder ein paar Stichwörter wie man es besser löst! DANKE!
Ich würde gerne eine allgemeine Frage in den Raum schmeißen und bitte um eure Meinung, ob das der "richtige" Lösungsweg ist:
Ich schreibe ein MAIN-programm, welches z.B alle 100ms läuft (=Task) und sämtliche Schalter einließt. Gesetzte Taster werden als globale Variable abgelegt (oder z.b in einem Array). Auf diese Weise verhindere ich, daß das Programm lange in einer Schleife "hängt", nur weil ein Taster lange gedrückt wird.
Jetzt nehme ich einen 2ten Task, der wird z.B alle 300ms ausgeführt. Er überprüft die globalen variablen. ist eine Gesetzt, so schaltet das entsprechende Licht.
Im Falle eines Dimmers besteht aber noch immer das Problem, daß auch der 2te Task evtl. lange blockiert ist. Aber wenigstens werden alle Tasterinputs erkannt, da das MAIN-Programm immer gleichschnell durchläuft, egal was es letztendlich schaltet.
Hoffe die Frage / meine Idee der Struktur ist verständlich. Um euch nicht zu sehr mit meinem Problem aufzuhalten, reicht mir ein kurzes ja, so macht man das oder ein paar Stichwörter wie man es besser löst! DANKE!