Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Project Documentation

Arduino-Controlled TLC5940 LED Driver with Audio Input and Button Interface

Image of Arduino-Controlled TLC5940 LED Driver with Audio Input and Button Interface

Circuit Documentation

Summary

This circuit appears to be designed for controlling multiple LEDs using a series of TLC5940 LED drivers, which are interfaced with an Arduino UNO microcontroller. The circuit includes input devices such as a microphone and an arcade button, and it is powered through a 2.1mm DC barrel jack. Capacitors and resistors are used for various purposes, including noise suppression, voltage smoothing, and current setting for the TLC5940 LED drivers. A toggle switch is included to control power flow.

Component List

Microcontroller

  • Arduino UNO: A microcontroller board based on the ATmega328P, with digital and analog I/O pins.

LED Drivers

  • TLC5940: A 16-channel LED driver with dot correction and grayscale PWM control.

LEDs

  • LED: Two Pin (blue): Blue LEDs with an anode and cathode for emitting blue light.

Power Supply

  • 2.1mm DC Barrel Jack: A power connector for supplying power to the circuit.

Resistors

  • Resistor (2000 Ohms): Used for setting current to the LEDs and other purposes.
  • Resistor (1000 Ohms): Used for gating the pMOS transistors.

Capacitors

  • Ceramic Capacitor (0.1 µF): Used for decoupling and noise suppression.
  • Electrolytic Capacitor (47 µF): Used for smoothing voltage fluctuations.

Transistors

  • pMOS Transistor (MOSFET): Used as a switch in the power supply circuit.

Input Devices

  • SparkFun Electret Microphone Breakout: Captures audio signals for processing.
  • Arcade Button (white): A pushbutton for user input.

Switches

  • Toggle Switch spst: A single-pole single-throw switch for controlling power.

Wiring Details

Arduino UNO

  • 5V to SparkFun Electret Microphone Breakout (VCC)
  • GND to various components including SparkFun Electret Microphone Breakout (GND), Arcade Button, and TLC5940 (GND)
  • A4 to Arcade Button
  • A5 to SparkFun Electret Microphone Breakout (AUD)
  • D13 to TLC5940 (SCLK)
  • D12 to pMOS Transistor (gate)
  • D11 to TLC5940 (SIN)
  • D10 to TLC5940 (BLANK)
  • D9 to TLC5940 (XLAT)
  • D8 to pMOS Transistor (gate)
  • D3 to TLC5940 (GSCLK)

TLC5940

  • Multiple TLC5940s are daisy-chained using SIN and SOUT pins.
  • IREF pin connected to a 2k Ohm resistor for each TLC5940.
  • VPRG and DCPRG connected to VCC for each TLC5940.
  • GSCLK, SCLK, BLANK, and XLAT are shared among all TLC5940s and connected to corresponding Arduino UNO pins.
  • Each OUT pin (OUT0-OUT15) is connected to the cathode of two blue LEDs, except for OUT1, OUT14, and OUT15, which are connected to the cathode of one blue LED.

LEDs

  • All blue LED anodes are connected together and then to the drain of the pMOS Transistor.
  • Each blue LED cathode is connected to an OUT pin on the TLC5940.

Power Supply

  • 2.1mm DC Barrel Jack (center) connected to the positive side of the Electrolytic Capacitor and Toggle Switch (COM).
  • 2.1mm DC Barrel Jack (sleeve) connected to GND.

pMOS Transistor (MOSFET)

  • Source connected to VCC through a Ceramic Capacitor and Toggle Switch (COM).
  • Drain connected to all blue LED anodes.
  • Gate connected to Arduino UNO (D12 or D8) through a 1k Ohm resistor.

Resistors

  • 2k Ohm resistors connected to TLC5940 (IREF).
  • 1k Ohm resistors connected to pMOS Transistor (gate).

Capacitors

  • Ceramic Capacitors (0.1 µF) connected to GND and VCC for decoupling.
  • Electrolytic Capacitor (47 µF) connected to the power supply for voltage smoothing.

Documented Code

Arduino UNO Code (sketch.ino)

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

Note: The provided code is a template and does not include specific functionality. It needs to be populated with the logic to control the TLC5940 LED drivers and to handle input from the microphone and arcade button.