3 switches en 3 leds met 1 druk op knop led aan en blijft aan,

Hallo ,

Ik probeer het even op het NL Forum , in het engels kom ik er even niet mee weg ;-((
Ik heb een sketch waarin ik 3 leds afzonderlijk wil aansturen met 3 aparte switches.
dit heb ik in een array gezet , maar krijg het niet voor elkaar om nu alle drie de switches te gebruiken.
met onderstaans sketch werkt alleen de switch op pin 7 ( input ) met 10 als output.
De pinnen 8 en 9 reageren niet ??

Het is dus de bedoeling dat de schakelaar 1x wordt ingedrukt en de LED aanblijft, daarna weer indrukken en de LED gaat uit.

Dit dus bij drie switches , later zou ik er meer in de index kunnen bijvoegen,

Wie kan mij adviseren hierin ?

Akvast bedankt !!

// test 3 BUTTON , with 3 LEDS , Array.
// One Push Button , LED = ON and stay on !!
// After push the button , LED = OFF and stay off !!
// ArduinoPat

int LED [] = {11,12,13};  // the pin for the LED 
int BUTTON[] = {7,8,9}; // the input for the BUTTON
                  
int val = 0;      // val will be used to store the state
                  // of the BUTTON pin 
int old_val = 0;  // this variable stores the previous
                  // value of "val" 
int state = 0;    // 0 = LED off and 1 = LED on 

void setup() 
{
  for(int index = 0; index < 3; index++)

{ 
  pinMode(LED[index], OUTPUT);   // tell Arduino LEDS is an output 
  pinMode(BUTTON[index], INPUT); // tell Arduino BUTTON is an input 
  
  digitalWrite(BUTTON[index],HIGH); // Pull-up Resistor 
  }
  
} 

void loop(){ 

    for(int index = 0; index < 3; index)                         
{
  int val  = digitalRead(BUTTON[index]);   // Against bouncing
  if ((val == HIGH) && (old_val == LOW))  // Against bouncing
  { 
    state = 1 - state;                   // Against bouncing
    delay(10);                           // Against bouncing
  } 

  old_val = val; // val is now old, let's store it 

  if (state == 1) {      
    digitalWrite(LED[index], HIGH); // turn LED ON 
  } 
  else 
  { 
   digitalWrite(LED[index], LOW); // turn LED OFF
  }
}
}

Groet,

Patrick , ArduinoPat

Je zou van de int old_val ook een array kunnen maken, om te beginnen. En dan de index in de loop een index++ van maken, en zo misschien nog wel wat.

Wat zeker mis is is dat je maar 1 state hebt voor 3 leds. Met vriendelijke groet Jantje