Lesson 1 Controlling LED by Button

Share for us


In this experiment, you will learn how to turn on/off an LED by using an I/O port and a button. The “I/O port” refers to the INPUT and OUTPUT port. Here the INPUT port of the SunFounder Uno board is used to read the output of an external device. Since the board itself has an LED (connected to Pin 13), so you can use this LED to do this experiment for convenience.


The LEDs provided in this kit are transparent. Actually, they can emit different colors, such as blue, red and yellow when electrified. The pins of blue LEDs are longer than the others, so it is easy to identify blue LEDs. For the other LEDs, you must electrified them to see their colors.


– 1 * SunFounder Uno board

– 1 * USB cable

– 1 * Button

– 1 * Resistor (10kΩ)

– Jumper wires

– 1 * Breadboard



Buttons are a common component used to control electronic devices. They are usually used as switches to connect or disconnect circuits. Although buttons come in a variety of sizes and shapes, the one used here is a6mmmini-button as shown in the following pictures. Pins pointed out by the arrows of same color are meant to be connected.

When the button is pressed, the pins pointed by the blue arrows will connect to the pins pointed by the red arrows.

Generally, the button is directly connected in an LED circuit in order to turn on or off the LED. This connection is relatively simple. However, sometimes the LED will light up automatically without pressing the button, which is caused by various interferences. In order to avoid these external interferences, a pull-down resistor is used, that is, to connect a 1K–10KΩ resistor between the button port and GND. It is used to consume external interferences while connected to GND for as long as the button switch is turned off.

This circuit connection is widely used in numerous circuits and electronic devices. For example, if you press any button on your mobile phone, the backlight will light up.

Experimental Procedures

Step 1: Build the circuit 

The schematic diagram 

Step 2: Program (please go to our official website www.sunfounder.com to download related code by clicking LEARN -> Get Tutorials)

Step 3: Compile the code

Step 4: Upload the sketch to the SunFounder Uno board

Now, press the button, and the LED on the SunFounder Uno board will light up.


//Controlling Led By Button//Turns on and off a LED ,when pressings button attach to pin12
const int keyPin = 12; //the number of the key pin
const int ledPin = 13;//the number of the led pin
void setup()
  pinMode(keyPin,INPUT);//initialize the key pin as input 
  pinMode(ledPin,OUTPUT);//initialize the led pin as output
void loop()
  //read the state of the key value
  //and check if the kye is pressed
  //if it is,the state is HIGH 
  if(digitalRead(keyPin) ==HIGH )
   digitalWrite(ledPin,HIGH);//turn on the led
   digitalWrite(ledPin,LOW);//turn off the led