Example program for the GE Color Effects library
Dependencies: GEColorEffects mbed
main.cpp
- Committer:
- bridadan
- Date:
- 2015-07-15
- Revision:
- 1:c182cbfd37b0
- Parent:
- 0:19269f9af0f5
File content as of revision 1:c182cbfd37b0:
#include "mbed.h" #include "GEColorEffects.h" #define NUM_LIGHTS 25 #define NUM_COLORS 6 #define NUM_LEDS_PER_COLOR 1 int px[NUM_LIGHTS]; // See the program page for information on the timing numbers // The given numbers are for the K64F GEColorEffects gce(D9, NUM_LIGHTS); int main() { //ws.useII(WS2812::PER_PIXEL); // use per-pixel intensity scaling // set up the colours we want to draw with int colorbuf[NUM_COLORS] = {0xFFFF0000, 0xFFFF4400, 0xFFFFFF00, 0xFF00CC00, 0xFF0033CC, 0xFF660099}; // for each of the colours (j) write out 10 of them // the pixels are written at the colour*10, plus the colour position // all modulus 60 so it wraps around for (int i = 0; i < NUM_LIGHTS; i++) { px[i] = colorbuf[(i / NUM_LEDS_PER_COLOR) % NUM_COLORS]; } // Now the buffer is written, rotate it // by writing it out with an increasing offset while (1) { int last = px[NUM_LIGHTS - 1]; for (int i = NUM_LIGHTS - 1; i > 0; i--) { px[i] = px[i - 1]; } px[0] = last; gce.write(px, true); wait(1); } }