Hallo,
ich habe eine Platine, auf der 8 Relais drauf sind und 8 Taster
Die Relais sollen alle unterschiedliche Zeiten anziehen.
Also z.B.
Taster 1 lässt Relais 1 = 1 sec. anziehen
Taster 2 lässt Relais 2 = 2 sec. anziehen
...
Taster 7 lässt Relais 7 = 7 sec. anziehen
Taster 8 lässt Relais 8 = 8 sec. anziehen
Das habe ich mal testweise probiert:
Das klappt auch schonmal alles mit den 8 Relais.Code:$regfile = "m16def.dat" $crystal = 8000000 Config Portc = Output Config Portd = Input Taster1 Alias Pind.1 Taster2 Alias Pind.0 Do if Taster1 = 0 Then Gosub Relais1 If Taster2 = 0 Then Gosub Relais2 Loop Relais1: Portc.7 = 1 Waitms 1000 Portc.7 = 0 Return Relais2: Portc.0 = 1 Waitms 2000 Portc.0 = 0 Return
Nun zu meinem Problem:
Wenn ich Taster 8 drücke und Relais 8 für 8 Sekunden anzieht, dann bleibt das Programm ja unter Label Relais8 für 8 sekunden hängen und ich kann dann keine anderen Relais anziehen lassen.
Wie kann ich es anstellen, das ich alle Relais so wie ich will ansteuern kann, ohne das die sich gegenseitig blockieren.







Zitieren

Lesezeichen