This project creates a RGB LED VU Meter which is controlled via USB by a Windows 7 or Vista host machine. The project serves several purposes: Firstly, it demonstrates how to read audio information from the Windows machine and pass this over USB to the device (which is a question which popped up several times after my USB Performance Monitor proje
USB RGB LED VU Meter - schematic

ct). Secondly, it implements an open source TLC5940 driver. Although a library has been available for the AVR microcontroller, I wasn`t able to find an open source library for the PIC. Hopefully this demonstration will be useful to anyone wanting to control a large number of LEDs with PWM brightness control. The hardware in this project is very straight forward. The demonstration board consists of a 5V regulator (switching), a PIC18F2550 with the required USB components, 3xTLC5940 16 channel serial LED drivers with PWM and 16 high intensity RGB LEDs. The only real thing of `note` in the circuit design is the two large capacitors placed next to the crystal oscillator. The high-speed switching performed by the 5940s when controlling the LEDs via PWM generates a lot of power-rail noise (and I mean a lot!). The two capacitors help to ensure that the PIC`s timing circuitry remains stable. During breadboarding the 5940s would cause the PIC to reset as well as other nasty side-effects. As I wanted to test and demonstrate cascaded TLC5940s the LEDs are not multiplexed. Each LED is under direct control. However, given the big amount of brightness generated by the LEDs the end result would not suffer due to multiplexing and the code can be readily adapted if required. The firmware is based on the software available from my Open Source Framework for USB Generic HID devices based on the PIC18F and Windows. I`ve added two layers to this...

Leave Comment

characters left:

New Circuits