Introduction
In this lesson, we will use button module to control a dual-color LED module.
![](https://learn.sunfounder.com/wp-content/uploads/2020/10/image-1734.png)
Required Components
– 1 * Raspberry Pi
– 1 * Breadboard
– Several Jumper wires
– 1 * Button module
– 1 * Dual-color LED module
– 2 * 3-Pin anti-reverse cable
Experimental Principle
Use a normally open button as an input device of Raspberry Pi. When the button is pressed, the General Purpose Input/Output (GPIO) connected to the button will change to low level (0V). You can detect the state of the GPIO through programming. That is, if the GPIO turns into low level, it means the button is pressed, so you can run the corresponding code. In this experiment, we will print a string on the screen and control an LED.
The schematic diagram of the module is as shown below:
![](https://learn.sunfounder.com/wp-content/uploads/2020/10/image-1735.png)
Experimental Procedures
Step 1: Build the circuit.
Raspberry Pi | GPIO Extension Board | Button Module |
GPIO0 | GPIO17 | SIG |
3.3V | 3V3 | VCC |
GND | GND | GND |
Raspberry Pi | GPIO Extension Board | Dual-Color LED Module |
GPIO1 | GPIO18 | R |
GND | GND | GND |
GPIO2 | GPIO27 | G |
![](https://learn.sunfounder.com/wp-content/uploads/2020/10/image-1737.png)
For C Users:
Step 2: Change directory.
cd /home/pi/SunFounder_SensorKit_for_RPi2/C/06_button/
Step 3: Compile.
gcc button.c -lwiringPi
Step 4: Run.
sudo ./a.out
For Python Users:
Step 2: Change directory.
cd /home/pi/SunFounder_SensorKit_for_RPi2/Python/
Step 3: Run.
sudo python3 06_button.py
The LED on the module will emit green light. If you press the button, “Button pressed” will be printed on the screen and the LED will emit red light. If you release the button, “Button released” will be printed on the screen and the LED will flash green again.
![](https://learn.sunfounder.com/wp-content/uploads/2020/10/image-1739.png)