Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Digitale Eingänge gleichzeitig betätigen Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Jens - 20.12.2012 11:23)
 Als Antwort auf Re: Digitale Eingänge gleichzeitig betätigen von Max Oppl - 20.12.2012 10:06
Jens nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro, sonstige
Hallo Max!

Zuerst mĂĽsstest Du Deine Taster anders abfragen und dabei auch gleichzeitig verriegeln.

Define Taster1 Port[9]
Define Ver1 Byte
Define Zeit1 Word

If (Not Taster1) And (Ver1 = 0) Then  'durchlaufen wenn Taster EIN
   Ver1 = 1  'Verriegelung aktivieren
   Zeit1 = 120  'Laufzeit einstellen
   Pause 5  'Schalterentprellung
End If
If (Taster1) And (Ver1 = 1) Then  'durchlaufen wenn Taster AUS
   Ver1 = 0  'Verriegelung aufheben
   Pause 5  'Schalterentprellung
End If

So erfasst Du beide Schaltzustände, einmal EIN und einmal AUS. Durch die Verriegelung wird die If Anweisung auch nur 1x durchlaufen, dadurch wird die „Zeit1“ Variable auch nur dann verändert wenn Du den Taster betätigst. Anschließend brauchst Du ein „Zeitglied“ wo die Zeit verändert wird.

Define Sekunde Byte

If Second <> Sekunde Then  'durchlaufen wenn nicht gleich
   Sekunde = Second  'verriegeln - neu zuweisen
   If Zeit1 > 0 Then Zeit1 = Zeit1 – 1  'Zeit runter zählen
End If

Die If Anweisung wird 1x pro Sekunde durchlaufen, damit hast Du also eine Zeitbasis mit einer Sekunde. Die Variable „Zeit1“ wird also jede Sekunde um 1 herab gesetzt, bis sie wieder bei 0 angekommen ist. Mit dem Taster hast Du zuvor den Wert auf 120 eingestellt, die Variable erreit so also nach 2 Minuten wieder den Wert 0. Und zu guter letzt muss Du die entsprechenden Ausgänge nur noch in Abhängigkeit der „Zeit1“ Variable schalten.

Define Licht1 Port[11]

If Zeit1 > 0 Then
   Licht = on  'Licht 1 einschalten
Else
   Licht = off  'Licht 1 ausschalten
End If

Und das war es auch schon. Das ganze packst Du in eine Endlosschleife und Deine Lichtsteuerung ist fertig...

LG Jens

 Antwort schreiben

Bisherige Antworten:

Re: Digitale Eingänge gleichzeitig betätigen (von Max Oppl - 20.12.2012 18:59)
    Re: Digitale Eingänge gleichzeitig betätigen (von Jens - 20.12.2012 19:41)