Lab01 - LEDs Part1
Lab01 - LEDs Part1
Lab01 - LEDs Part1
Parts required for project 1. In this project, you’ll add a pushbutton switch to an LED
circuit to control when the LED is lit.
1. Arduino board
2. Breadboard
3. Jumper wires
4. LED
5. Momentary tactile four-pin pushbutton
6. 10k-ohm resistor
7. 220-ohm resistor
Parts required for project 2. In this project, you’ll create a dimmer switch by adding
a potentiometer to control the brightness of an LED.
1. Arduino board
2. Breadboard
3. Jumper wires
4. LED
5. 50k-ohm potentiometer
6. 470-ohm resistor
Page 1
PROJECT 1. PUSHBUTTONCONTROLLED LED
This project will take you through the basics of switches, which you’ll be using a lot
throughout this book. Almost all electrical items use switches to turn an element on or off.
There are many types of switches, and the one you’ll use now is a pushbutton Figure 1-1.
1. How It Works
When pressed, a pushbutton completes a circuit, turning it on. As soon as the button is released, the
connection will spring back and break that circuit, turning it off. The pushbutton switch is also known as a
momentary or normally open switch, and is used in, for example, computer keyboards. This is in contrast to
a toggle switch, which stays either on or off until you toggle it to the other position, like a light switch. This
type of pushbutton has four pins, but you generally use only two at a time for connection. You’ll use the top
connections in this project, although the two unused pins at the bottom would do the same job. As Figure
1-2 shows, the pins work in a circuit. Pins A and C are always connected, as are pins B and D. When the
button is pressed, the circuit is complete.
Page 2
2. The Build
Step 1. Place your pushbutton in a breadboard, as shown in Figure 1-3.
Step 2. Connect pin A to one leg of a 10k-ohm resistor, and connect that same resistor leg to Arduino pin
2. Connect the other resistor leg to the GND rail, and connect the GND rail to the Arduino’s GND. Connect
pin B on the switch to the +5V rail, and connect this rail to +5V on the Arduino.
PUSHBUTTON ARDUINO
LEDs ARDUINO
Pin 13 via 220-ohm
Positive leg
resistor
Negative leg GND
Step 4. Confirm that your setup matches the circuit diagram shown in Figure 1-4, and then upload the
code in “The Sketch” on next page.
Page 3
Figure 1-4. Circuit diagram for the pushbuttoncontrolled LED
3. The Sketch
In this sketch, you assign a pin for the pushbutton and set it as INPUT, and a pin for the LED and set it
as OUTPUT. The code tells the Arduino to turn the LED on as long as the button is being pressed
(completing the circuit), and to keep the LED off when the button is not being pressed. When the button is
released, the circuit breaks and the LED will turn off again.
Page 4
PROJECT 2. LIGHT DIMMER
A potentiometer is a variable resistor with a knob that allows you to alter the resistance of the
potentiometer as you turn it. It is commonly used in electrical devices such as volume controls on audio
equipment. This project uses a 50k-ohm potentiometer.
1. How It Works
The potentiometer manipulates a continuous analog signal, which represents physical
measurements. Humans perceive the world in analog; everything we see and hear is a continuous
transmission of information to our senses. This continuous stream is what defines analog data. Digital
information, on the other hand, estimates analog data using only numbers. To approximate the continuous
analog data from the potentiometer, the Arduino must represent the signal as a series of discrete numbers
—in this case, voltages. The center pin of the potentiometer sends the signal to an Arduino analog IN—any
pin from A0 to A5—to read the value.
The LED is actually being switched on and off, but it happens so quickly that our eyes compensate
and we see a continuously lit LED at varying light levels. This is known as persistence of vision.
To create persistence of vision, the Arduino uses a technique called pulse width modulation (PWM).
The Arduino creates a pulse by switching the power on and off very quickly. The duration that the power is
on or off (known as the pulse width) in the cycle determines the average output, and by varying this pulse
width the pattern can simulate voltages between full on (5 volts) and off (0 volts). If the signal from the
Arduino is on for half the time and off for half, the average output will be 2.5 volts, halfway between 0 and
5. If the signal is on for 80 percent and off for 20 percent, then the average voltage is 4 volts, and so on. You
can vary the signal, which in turn varies the pulse width, by turning the potentiometer left or right,
increasing or decreasing the resistance.
Using this technique, you can change the voltage sent to the LED and make it dimmer or brighter to
match the analog signal from the potentiometer. Only pins 3, 5, 6, 9, 10, or 11 on the Arduino can use
PWM. Figure 2-1 gives examples of how PWM would look as a waveform.
High signal (at 5 volts) for 20% of the time and low (at 0 volts) for 80% of the time, so output (red
line) will be 0.2 × 5V = 1V.
Page 5
High signal for 50% and low for 50%, so output will be 0.5 × 5V = 2.5V
High signal for 80% and low for 20%, so output will be 0.8 × 5V = 4V
2. The Build
Step 1. Insert the potentiometer into your breadboard and connect the center pin to the Arduino’s A0 pin.
Connect one of the outer pins to the +5V rail of the breadboard and the other outer pin to GND on the
breadboard (it doesn’t actually matter which way around the outer potentiometer pins are connected;
these instructions just reflect the diagrams in this project), as shown in Figure 2-2.
POTENTIOMETER ARDUINO
LED ARDUINO
Page 6
Figure 2-3. Circuit diagram for the light dimmer
This project has many potential uses: you can cluster a number of LEDs together to create an
adjustable flashlight, a night-light, a display case light, or anything else that uses dimming lights.
3. The Sketch
This sketch works by setting pin A0 as your potentiometer and pin 9 as an OUTPUT to power the LED.
You then run a loop that continually reads the value from the potentiometer and sends that value as
voltage to the LED. The voltage value is between 0–5 volts, and the brightness of the LED will vary
accordingly.
Page 7