Here’s a nice PIC controlled LED lamp…
The original RGB PWM driver application that I wrote in 2004 had a few shortcomings. Probably the biggest was that it was not easy to add to or change the sequences. This new version addresses that problem, is more flexible and now includes the ability to put the PIC to ‘sleep’ and ‘wake’ it again using the sequence select switch, eliminating the need for an on/off switch in battery powered applications.
The circuit uses (RGB) Red, Green and Blue high brightness LEDs that are pulse width modulated (PWM) to vary the intensity of each colour LED. This allows effectively any colour to be generated with rapid changing strobe effects, fast and slow colour fades as well as static colours. The data used to set and change the colours is held in an easy to edit file so if you don’t like the sequences provided with it, you can modify the sequence data include file yourself and reprogram with your own sequences.
The code can be assembled for use with the following PICs: 12F629, 12F675, 12F683. Just select the correct processor in the MPLAB IDE before assembling.
RGB LED controller – Link.