Search

Thursday 10 May 2018

Arduino Code to interface push button to ON & OFF a LED

Code to Turn on LED while the button is pressed.

const int LED = 13;   // the pin for the LED
const int BUTTON = 7; // the input pin where the
 // pushbutton is connected
int val = 0; // val will be used to store the state
 // of the input pin
void setup() {
 pinMode(LED, OUTPUT); // tell Arduino LED is an output
 pinMode(BUTTON, INPUT); // and BUTTON is an input
}
void loop(){
 val = digitalRead(BUTTON); // read input value and store it
 // check whether the input is HIGH (button pressed)
 if (val == HIGH) {
 digitalWrite(LED, HIGH); // turn LED ON
 } else {
 digitalWrite(LED, LOW);
 }
}

Code to turn on LED when the button is pressed and keep it on after it is released.

const int LED = 13;   // the pin for the LED
const int BUTTON = 7; // the input pin where the
                      // pushbutton is connected
int val = 0;    // val will be used to store the state
                // of the input pin
int state = 0;  // 0 = LED off while 1 = LED on
void setup() {
  pinMode(LED, OUTPUT);   // tell Arduino LED is an output
  pinMode(BUTTON, INPUT); // and BUTTON is an input
}
void loop() {
  val = digitalRead(BUTTON); // read input value and store it
  // check if the input is HIGH (button pressed)
  // and change the state
  if (val == HIGH) {
    state = 1 - state;
  }
  if (state == 1) {
    digitalWrite(LED, HIGH); // turn LED ON
  } else {
    digitalWrite(LED, LOW);
  }
}

Modified new code  for button presses LED on.

const int LED = 13;    // the pin for the LED
const int BUTTON = 7;  // the input pin where the
                       // pushbutton is connected
int val = 0;     // val will be used to store the state
                 // of the input 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() {
  pinMode(LED, OUTPUT);   // tell Arduino LED is an output
  pinMode(BUTTON, INPUT); // and BUTTON is an input
}
void loop(){
 val = digitalRead(BUTTON); // read input value and store it
                            // yum, fresh
 // check if there was a transition
 if ((val == HIGH) && (old_val == LOW)){
   state = 1 - state;
   delay(10);
 }
 old_val = val; // val is now old, let's store it
 if (state == 1) {
   digitalWrite(LED, HIGH); // turn LED ON
 } else {
   digitalWrite(LED, LOW);
 }
}

No comments:

Post a Comment