Hallo Community,
ich habe eine Frage und zwar habe ich in einem Programm unter anderem ein Lauflicht programmiert, welches sofort nach Knopfdruck auf dem zugehörigen Keypad ausgehen soll.
Die Ausgabe auf die LED's erfolgt über das 74HC595 Schieberegister.
Der Code:
if (button=='A'||'B'||'C'||'D')
{bet = true;}
if (button=='*')
{ausf = true;}
if (button=='#')
{ausf = false;}
if (ausf==true && bet == true)
{laufen();}
if (button=='A')
{x=50;}
if (button=='B')
{x=100;}
if (button=='C')
{x=200;}
if (button=='D')
{x=400;}
void laufen(){
int leds=0;
button = myKeypad.getKey();
for (int i=0;i<8; i++)
{ bitSet(leds, i);
digitalWrite(Latch, LOW);
shiftOut(Data,Shift,MSBFIRST,leds);
digitalWrite(Latch,HIGH);
delay(x); }
leds=0;
delay (50);
digitalWrite(Latch, LOW);
shiftOut(Data,Shift,MSBFIRST,leds);
digitalWrite(Latch,HIGH); }
Das Problem ist allerdings nun, dass ich genau den Moment abpassen muss wenn das Programm wieder von vorne durch läuft, denn sonst lässt es sich nicht über '#' beenden.
Ich hoffe ihr könnt mir helfen.