Hallo ich bräuchte mal eure Hilfe
Aufgabe: Solange der Taster gedrückt ist, sollen 5 Lampen nacheinander aufleuchten, bis dieser wieder losgelassen wird. Dann soll die Lampe blinken, die zuletzt aufgeleuchtet ist.
Genau diese Lampe soll dann aber beim nächsten Betätigen des Schalters nicht mehr aufleuchten. Wenn alle Lampen an waren, fängt es wieder von vorne an.
Mein Vorschlag wäre dies mit einem Zähler und Sprüngen umzusetzen:
Problem ist jetzt aber, dass alle Lampen die ganze Zeit blinken. Wo ist mein Fehler?
Aufgabe: Solange der Taster gedrückt ist, sollen 5 Lampen nacheinander aufleuchten, bis dieser wieder losgelassen wird. Dann soll die Lampe blinken, die zuletzt aufgeleuchtet ist.
Genau diese Lampe soll dann aber beim nächsten Betätigen des Schalters nicht mehr aufleuchten. Wenn alle Lampen an waren, fängt es wieder von vorne an.
Mein Vorschlag wäre dies mit einem Zähler und Sprüngen umzusetzen:
Code:
U Taster 1
U "Clk10"
ZV Z 2
L Z 2
L 5
>I
L C#0
S Z 2
U "U07SeqD".Seq.User.Bit21
SPB M001 //Wenn Bit 21 gesetzt, sprich Lampe geblinkt hat dann zu M001
L Z 2
L 1
==I
L C#1
= "U07SeqD".Seq.User.Bit15
M001: U "U07SeqD".Seq.User.Bit22
SPB M002 //Wenn Bit 22 gesetzt, sprich Lampe geblinkt hat dann zu M002
L Z 2
L 2
==I
L C#2
= "U07SeqD".Seq.User.Bit16
M002: U "U07SeqD".Seq.User.Bit23
SPB M003 //Wenn Bit 23 gesetzt, sprich Lampe geblinkt hat dann zu M003
L Z 2
L 3
==I
L C#3
= "U07SeqD".Seq.User.Bit17
M003: U "U07SeqD".Seq.User.Bit24
SPB M004 //Wenn Bit 24 gesetzt, sprich Lampe geblinkt hat dann zu M004
L Z 2
L 4
==I
L C#4
= "U07SeqD".Seq.User.Bit18
M004: U "U07SeqD".Seq.User.Bit25
L Z 2
L 5
==I
L C#5
= "U07SeqD".Seq.User.Bit19
U "U07SeqD".Seq.User.Bit15
U Taster 1
O
U "U07SeqD".Seq.User.Bit15
UN Taster 1
S "U07SeqD".Seq.User.Bit21 // Bit wird gesetzt, wenn Lampe blinkt
U "Clk20"
= Lampe 1
U "U07SeqD".Seq.User.Bit16
U Taster 1
O
U "U07SeqD".Seq.User.Bit16
UN Taster 1
S "U07SeqD".Seq.User.Bit22 // Bit wird gesetzt, wenn Lampe blinkt
U "Clk20"
= Lampe 2
U "U07SeqD".Seq.User.Bit17
U Taster 1
O
U "U07SeqD".Seq.User.Bit17
UN Taster 1
S "U07SeqD".Seq.User.Bit23 // Bit wird gesetzt, wenn Lampe blinkt
U "Clk20"
= Lampe 3
U "U07SeqD".Seq.User.Bit18
U Taster 1
O
U "U07SeqD".Seq.User.Bit18
UN Taster 1
S "U07SeqD".Seq.User.Bit24 // Bit wird gesetzt, wenn Lampe blinkt
U "Clk20"
= Lampe 4
U "U07SeqD".Seq.User.Bit19
U Taster 1
O
U "U07SeqD".Seq.User.Bit19
UN Taster 1
S "U07SeqD".Seq.User.Bit25 // Bit wird gesetzt, wenn Lampe blinkt
U "Clk20"
= Lampe 5
U "U07SeqD".Seq.User.Bit21
U "U07SeqD".Seq.User.Bit22
U "U07SeqD".Seq.User.Bit23
U "U07SeqD".Seq.User.Bit24
U "U07SeqD".Seq.User.Bit25
= M 8.0
U M 8.0
R "U07SeqD".Seq.User.Bit21 // Bits werden zurück gesetzt, wenn alle gesetzt wurden
R "U07SeqD".Seq.User.Bit22
R "U07SeqD".Seq.User.Bit23
R "U07SeqD".Seq.User.Bit24
R "U07SeqD".Seq.User.Bit25