The Christmas lighting will be based on 20 LEDs. We will be using a technology called Charlieplexing which is frequently used in Arduino based projects. The reason for this is that we do not want to use a pin on the Arduino board for every single LED.
Due to a shortage of pins on the Arduino board people came up with several solutions. E.g. multiplexing and charlieplexing, the latter will be used in this case due to limited wires in a LAN cable.
For a LED to work you need current flowing from HIGH to LOW. For example to make LED1 burn PIN1 is HIGH and PIN2 is LOW. However the state of PIN3 could influence this schematic. Therefore in charlieplexing every unused pin goes into what’s called a tri-state, setting this pin as an INPUT. Those have very high impedance therefore very little current will leak out there.
Example: To turn on LED6. PIN1 is LOW, PIN2 is INPUT and PIN3 is HIGH
This technology is not very impressive when only using six LEDs, however when we expand the amount of pins we discover that this system can connect {pins(pins-1) = LEDs} in the case of 5 pins this is 5x4=20 LEDs, exactly the amount we want.
First of all make sure you know this schematic from top to bottom. Write additional info on it like for example the color of the wire, so you will not connect LEDs to the wrong wires.
When all this is done connect the resistors to the wires and plug the resistors in the Arduino.
Comments