RGB leds are fun and because they can be used in many projects I have decided to make a library to easily crossfade the colors of one or multiple RGB leds.
To see this library used in a real project, check out this video Digital Clock With RGB Night Lamp & Spherical Shelf.
Crossfading an RGB led in the RGB colorspace
With 8 bits we have 256 values from 0 to 255 that represents the duty cycle - how long a led will be on then off in a period. For example setting the RED led to 255 and GREEN and BLUE to 0 will result in RED color. Or RED 255, GREEN 0 and BLUE 255 will show a purple color. All leds on (255 value) will result in a white lite. So this is how a certain color can be produced but how to cycle through all the possible combinations?
First the red color is set at 255 and green and blue to 0. Then the red will
be decremented and the green will be incremented. When the red will be 0 and
green 255 we change the fading up and fading down colors.