Interfacing of Switch and Arduino (Turn ON LED Using a Switch)

We all know switch is an input device and used; to make or break an electrical connection. Now let’s learn Interfacing of Switch and Arduino, Here we will use switch to take input signal to the microcontroller so that we will be able to interface more input devices to the microcontroller, like sensors output as input to microcontroller.

Required hardware or components for Interfacing of Switch with Arduino Uno

S.N.ComponentQuantity
1.Arduino Uno1
2.Breadboard1
3.LED1
4.Resistor 220 or 280 ohm1
5.Resistor 1K = 1000 ohm1
6.Switch / Button1

CIRCUIT DIAGRAM : INTERFACING OF SWITCH AND ARDUINO

Interfacing of Switch as Input with Arduino
Interfacing of Switch as Input with Arduino

CONNECTION TABLE

S.N.ArduinoLED
1.13Anode (+)
2.GNDCathode (-)
S.N.ArduinoSwitchPull Down Resistor
1.GNDOne Terminal
2.2 (common to both)One TerminalOther terminal
3.+5VOther terminal

ARDUINO CODE : INTERFACING OF SWITCH AND ARDUINO

int buttonState = 0;

void setup() {
  pinMode(2, INPUT);
  pinMode(13, OUTPUT);
}

void loop() {
  buttonState = digitalRead(2);
  if (buttonState == HIGH) {
    digitalWrite(13, HIGH);
  } else if (buttonState == LOW) {
    digitalWrite(13, LOW);
  }
}

ARDUINO PROGRAMMING CODE EXPLANATION

Define a global variable buttonState, we will use this to read state of pin number 2. State of digital pin can be either LOW=0 or HIGH=1 set default to LOW(0)

int buttonState = 0;

Here we assigned pin number 2 as input and 13 as ouput of arduino using pinMode(pinNumber, mode) function.

void setup() {
  pinMode(2, INPUT);
  pinMode(13, OUTPUT);
}

Here we are using a new inbuilt function that is digitalRead(pinNumber), it is just opposite to digitalWrite where we set two states (HIGH or LOW) of pin.

The digitalRead( ) function will read the state of the arduino pin, Here we read the state of pin number 2 of the arduino. After Reading the state of Digital pin 2, we will store the value to variable buttonState, So now buttonState value will be Either LOW=0 or HIGH=1

If the button is pressed down, that means current from the 5V power source can flow to pin number 2 of arduino which makes pin 2 state HIGH.
Now at this time if we read the state of pin number 2 using digitalRead( ) function then the value of buttonState is HIGH (1).
Now we will check, using if function does buttonState is HIGH, if yes, then make Pin number 13 also HIGH this will turn ON the Led connected on pin 13.

void loop() {
  buttonState = digitalRead(2);
  if (buttonState == HIGH) {
    digitalWrite(13, HIGH);
  }

Else If button is not pressed, that means buttonState read from pin number 2 is LOW, if LOW then make Pin number 13 also LOW this will turn OFF the Led connected on pin 13.

 else if (buttonState == LOW) {
    digitalWrite(13, LOW);
  }
}

As you press the button you find the LED to glow and as you release you find it OFF.

Read Next: BLINK LED USING SWITCH WITH ARDUINO

4.2 5 votes
Article Rating
Subscribe
Notify of
guest
1 Comment
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
prabhakar rao
prabhakar rao
5 months ago

bee better

1
0
Would love your thoughts, please comment.x
()
x