jim hamblen
/
Shiftbrite_Demo
Simple demo for a ShiftBrite RGB LED module that cycles through different colors.
Diff: main.cpp
- Revision:
- 0:fc7fc9c0cd67
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Fri Apr 22 14:31:29 2011 +0000 @@ -0,0 +1,39 @@ +#include "mbed.h" +//ShiftBrite Demo +DigitalOut latch(p15); +DigitalOut enable(p16); +//Cycles through different colors on RGB LED +SPI spi(p11, p12, p13); +//Use SPI hardware to write color values to LED driver chip +void RGB_LED(int red, int green, int blue) { + unsigned int low_color=0; + unsigned int high_color=0; + high_color=(blue<<4)|((red&0x3C0)>>6); + low_color=(((red&0x3F)<<10)|(green)); + spi.write(high_color); + spi.write(low_color); + latch=1; + latch=0; +} + +int main() { + int red=0; + int green=0; + int blue=0; + spi.format(16,0); + spi.frequency(500000); + enable=0; + latch=0; + wait(2); + for (red = 0; red<50; red = red+10) { + for (blue = 0; blue<50; blue = blue+10) { + for (green = 0; green<50; green = green+10) + + { + RGB_LED( red, green, blue); + wait(.25); + } + } + } + +}