Ich will in meine Sketch eine Pause über den pin4 einfügen, dies soll in Blink1 und in Blink2 sein, wenn der Schalter betätigt wird geht das Sketch in Pause und die LED1 und 2 gehen an bis der Schalter wieder auf Low geht. Der Sketch soll aber am gleichen Punkt weiterlaufen wo er auch betätigt worden ist. Bin für jede Hilfe dankbar.
const int led1 = 7; // choose a pin for the LED
const int led2 = 8; // choose a pin for the LED
const int buzzer = 10; // choose a pin for the LED
const int button1 = 2; // choose a pin for the push button
const int button2 = 3; // choose a pin for the push button
const int pause = 4; // choose a pin for the push button
void setup(){
pinMode(led1, OUTPUT); // declares LED as an output
pinMode(led2, OUTPUT); // declares LED as an output
pinMode(buzzer, OUTPUT); // declares LED as an output
pinMode(button1, INPUT); // declares push button as an input
pinMode(button2, INPUT); // declares push button as an input
pinMode(pause, INPUT); // declares push button as an input
}
void loop(){
int val1 = digitalRead(button1);
int val2 = digitalRead(button2);
int val3 = digitalRead(pause);
if ((val1 == HIGH) && (val2 == LOW)){
blink1();
}
if ((val2 == HIGH) && (val1 == LOW)){
blink2();
}
}
void blink1(){
int i;
digitalWrite(buzzer, HIGH);
delay (1000);
digitalWrite(buzzer, LOW);
for (i = 0; i < 6; i++){
digitalWrite(led1, HIGH);
delay (500);
digitalWrite(led1, LOW);
delay (500);
}
digitalWrite(buzzer, HIGH);
delay (1000);
digitalWrite(buzzer, LOW);
for (i = 0; i < 3; i++){
digitalWrite(led1, HIGH);
delay (250);
digitalWrite(led2, HIGH);
delay (250);
digitalWrite(led1, LOW);
delay (250);
digitalWrite(led2, LOW);
delay (250);
}
}
void blink2(){
int i;
for (i = 0; i < 20; i++){
digitalWrite(led2, HIGH);
delay (1000);
digitalWrite(led2, LOW);
delay (1000);
}
}