Keyboards often have LEDs to indicate CapsLock, NumLock, and other states. It’s one of the first things we look at when a keyboard produces unexpected results.
The breadboard keyboard modifies the basic breadboard keyboard described in tutorial_1_breadboard_keyboard.md
Add components to the breadboard as shown in the picture.
The three clear plastic cylinders are red and yellow LEDs. Each LED is in series with a 4.7k Ohm current limiting resistor. LED anodes (the longer lead) are powered by pins 16, 17, and 21. LED cathodes (the shorter lead) are connected to a grounded terminal strip.
The keybrd_5a_LED_on_uC.ino sketch will run on the above breadboard keyboard. As usual, the sketch annotations explain the code.
Forward voltage is the voltage used by the LED. Forward voltage is published in the LED’s datasheet.
Most blue and green LEDs have about 3.3 forward voltage, which does not reliably illuminate on Teensy LC’s 3.3 volts. Most red and yellow LEDs have around 2.2 forward voltage. So use red and yellow LEDs on Teensy LC. Low-current LEDs can go as low as 1.6 forward voltage.
The amount of current (I) going through an LED is directly proportional to how bright it appears. By picking the correct resistor, you have full control over how bright the LED appears.
Lets see how much visual difference resistance makes. Replace an LED’s 4.7k Ohm resistor with a 68 Ohm resistor.
Less resistance makes the LED brighter. Too little resistance will burn out the LED. The current supplied to an LED should always be limited by a resistor or some other device.
This formula calculates the minimum resistance for maximum LED brightness:
output-pin Supply Voltage Vs
LED Forward Voltage Vf
Forward Current If
From Ohm's Law, minimum current limiting restiance R = (Vs - Vf) / If
For Forward Current, use the smaller of:
Teensy LC output-pin capacities are:
Voltages and current capacities are published in datasheets and sometimes pinout diagrams. For Teensy LC 20 mA pin and the TT Electronics OVLLx8C7 LED:
output-pin Supply Voltage Vs = 3.3 volts
LED Forward Voltage Vf = 2.2 volts
use the smaller of:
max pin Current If = 20 mA
max LED Current If = 30 mA
minimum current limiting restiance R = (Vs - Vf) / If = 55 Ohms
Add a safety margin for resistor tolerances (1%, 2%, 5%, 10%), and round up to a standard value. http://www.rfcafe.com/references/electrical/resistor-values.htm
55 Ohms + (55 Ohms * 10%) = 60.5 Ohms < 68 Ohms
It is safe to use more resistance.
Calculating the resistance for the Teensy LC 5 mA pin is left as an exercise.
Through-the-hole resistors have color coded bands that indicate resistance value. https://en.wikipedia.org/wiki/Electronic_color_code#Resistor_color-coding
1) In this exercise you will calculate the minimum current limiting resistance needed for your output pin and LED.
For your microcontroller, find:
From your LED’s datasheet, find:
Calculate the minimum resistance needed for your LED and Supply Voltage.
keybrd tutorial by Wolfram Volpi is licensed under a Creative Commons Attribution 4.0 International License.
Permissions beyond the scope of this license may be available at https://github.com/wolfv6/keybrd/issues/new.