Source code for the Curilights Controller. See http://www.saccade.com/writing/projects/CuriController/ for details.
Dependencies: FatFileSystem mbed
This is the source code for the Curilights controller. This lets you interactively control a string of Curilights. It provides a simple click-wheel user interface for changing colors, brightness and behavior. It responds to movement and lighting.
Finished Controller
System Block Diagram
NumSprites.h
- Committer:
- isonno
- Date:
- 2011-12-29
- Revision:
- 0:6da5625a6946
File content as of revision 0:6da5625a6946:
const unsigned char N0_data[] = { 0x00,0x2A,0xFF,0xE6,0x00,0x00, 0x03,0xEF,0xFF,0xFF,0x90,0x00, 0x0D,0xFC,0x20,0x7F,0xF4,0x00, 0x4F,0xF4,0x00,0x0C,0xFB,0x00, 0x8F,0xE0,0x00,0x08,0xFF,0x10, 0xAF,0xD0,0x00,0x06,0xFF,0x30, 0xBF,0xD0,0x00,0x06,0xFF,0x40, 0xAF,0xD0,0x00,0x06,0xFF,0x30, 0x8F,0xF0,0x00,0x07,0xFF,0x10, 0x4F,0xF4,0x00,0x0B,0xFB,0x00, 0x0D,0xFC,0x20,0x7F,0xF5,0x00, 0x03,0xEF,0xFF,0xFF,0x90,0x00, 0x00,0x3A,0xFF,0xD6,0x00,0x00 }; const sprite_data_t N0_sprt = { N0_data, 13, 11 }; const unsigned char N1_data[] = { 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x00,0xBF,0xD0, 0x7F,0xFF,0xD0, 0x7F,0xFF,0xD0, 0x04,0x79,0xD0 }; const sprite_data_t N1_sprt = { N1_data, 13, 5 }; const unsigned char N2_data[] = { 0xDF,0xFF,0xFF,0xFF,0xB0, 0xDF,0xFF,0xFF,0xFF,0xB0, 0x7F,0xF2,0x00,0x00,0x00, 0x09,0xFD,0x20,0x00,0x00, 0x00,0x7F,0xD3,0x00,0x00, 0x00,0x05,0xFF,0x60,0x00, 0x00,0x00,0x4F,0xF7,0x00, 0x00,0x00,0x05,0xFF,0x40, 0x00,0x00,0x00,0xCF,0xA0, 0x00,0x00,0x00,0xCF,0xB0, 0x87,0x20,0x07,0xFF,0x90, 0x9F,0xFF,0xFF,0xFE,0x20, 0x17,0xCF,0xFF,0x82,0x00 }; const sprite_data_t N2_sprt = { N2_data, 13, 9 }; const unsigned char N3_data[] = { 0x29,0xFF,0xFC,0x60,0x00, 0xDF,0xFF,0xFF,0xF9,0x00, 0xC7,0x00,0x3C,0xFF,0x30, 0x00,0x00,0x03,0xFF,0x60, 0x00,0x00,0x04,0xFF,0x50, 0x00,0x00,0x6D,0xFD,0x10, 0x0B,0xFF,0xFF,0xC3,0x00, 0x0B,0xFF,0xFC,0x60,0x00, 0x00,0x00,0x5E,0xF8,0x00, 0x00,0x00,0x07,0xFF,0x10, 0xB7,0x00,0x1B,0xFF,0x20, 0xBF,0xFF,0xFF,0xFC,0x00, 0x07,0xEF,0xFE,0x70,0x00 }; const sprite_data_t N3_sprt = { N3_data, 13, 9 }; const unsigned char N4_data[] = { 0x00,0x00,0x00,0x6F,0xF0,0x00, 0x00,0x00,0x00,0x6F,0xF0,0x00, 0x00,0x00,0x00,0x6F,0xF0,0x00, 0x6F,0xFF,0xFF,0xFF,0xFF,0x70, 0x6F,0xFF,0xFF,0xFF,0xFF,0x70, 0x1D,0xE2,0x00,0x4F,0xF0,0x00, 0x03,0xFC,0x00,0x4F,0xF0,0x00, 0x00,0x7F,0x80,0x4F,0xF0,0x00, 0x00,0x0A,0xF5,0x4F,0xF0,0x00, 0x00,0x01,0xDE,0x6F,0xF0,0x00, 0x00,0x00,0x3F,0xEF,0xF0,0x00, 0x00,0x00,0x07,0xFF,0xF0,0x00, 0x00,0x00,0x00,0xAF,0xF0,0x00 }; const sprite_data_t N4_sprt = { N4_data, 13, 11 }; const unsigned char N5_data[] = { 0x06,0xEF,0xFA,0x40,0x00, 0x7F,0xFF,0xFF,0xF6,0x00, 0x79,0x20,0x3D,0xFE,0x10, 0x00,0x00,0x05,0xFF,0x60, 0x00,0x00,0x02,0xFF,0x70, 0x00,0x00,0x06,0xFF,0x50, 0x00,0x00,0x7F,0xFD,0x00, 0x4F,0xFF,0xFF,0xE3,0x00, 0x4F,0xFF,0xE7,0x10,0x00, 0x4F,0x70,0x00,0x00,0x00, 0x4F,0x80,0x00,0x00,0x00, 0x4F,0xFF,0xFF,0xFF,0x40, 0x4F,0xFF,0xFF,0xFF,0x40 }; const sprite_data_t N5_sprt = { N5_data, 13, 9 }; const unsigned char N6_data[] = { 0x00,0x07,0xEF,0xFD,0x60,0x00, 0x00,0xAF,0xFF,0xFF,0xF8,0x00, 0x06,0xFF,0x50,0x0A,0xFF,0x30, 0x0C,0xF8,0x00,0x01,0xFF,0x70, 0x1F,0xF7,0x00,0x01,0xFF,0x90, 0x2F,0xFE,0x50,0x1A,0xFF,0x60, 0x2F,0xFC,0xFF,0xFF,0xFC,0x00, 0x1F,0xF7,0x5D,0xFF,0x70,0x00, 0x0E,0xFA,0x00,0x00,0x00,0x00, 0x09,0xFF,0x20,0x00,0x00,0x00, 0x02,0xFF,0xC3,0x00,0x7C,0x00, 0x00,0x6F,0xFF,0xFF,0xFD,0x00, 0x00,0x04,0xAF,0xFF,0x81,0x00 }; const sprite_data_t N6_sprt = { N6_data, 13, 11 }; const unsigned char N7_data[] = { 0x2F,0xFB,0x00,0x00,0x00, 0x0E,0xFC,0x00,0x00,0x00, 0x07,0xFF,0x30,0x00,0x00, 0x01,0xEF,0x70,0x00,0x00, 0x00,0x7F,0xE1,0x00,0x00, 0x00,0x0B,0xF7,0x00,0x00, 0x00,0x02,0xFE,0x10,0x00, 0x00,0x00,0x7F,0x90,0x00, 0x00,0x00,0x0B,0xF4,0x00, 0x00,0x00,0x02,0xED,0x10, 0x00,0x00,0x00,0x7F,0xA0, 0xDF,0xFF,0xFF,0xFF,0xF0, 0xDF,0xFF,0xFF,0xFF,0xF0 }; const sprite_data_t N7_sprt = { N7_data, 13, 9 }; const unsigned char N8_data[] = { 0x00,0x7D,0xFF,0xF9,0x30,0x00, 0x0A,0xFF,0xFF,0xFF,0xF4,0x00, 0x4F,0xFC,0x30,0x1B,0xFD,0x00, 0x6F,0xF3,0x00,0x04,0xFF,0x20, 0x2F,0xF5,0x00,0x2B,0xFE,0x10, 0x06,0xFD,0x79,0xFF,0xE4,0x00, 0x00,0x3F,0xFF,0xFD,0x00,0x00, 0x02,0xDF,0xF9,0xCF,0x80,0x00, 0x0A,0xFD,0x30,0x1E,0xF4,0x00, 0x0B,0xF7,0x00,0x0B,0xF7,0x00, 0x09,0xFC,0x10,0x4F,0xF7,0x00, 0x02,0xEF,0xFF,0xFF,0xD1,0x00, 0x00,0x29,0xFF,0xF9,0x20,0x00 }; const sprite_data_t N8_sprt = { N8_data, 13, 11 }; const unsigned char N9_data[] = { 0x06,0xCF,0xFB,0x30,0x00, 0x6F,0xFF,0xFF,0xE4,0x00, 0x69,0x20,0x2C,0xFB,0x20, 0x00,0x00,0x03,0xDF,0x60, 0x00,0x00,0x00,0x9F,0x90, 0x05,0xCF,0xE5,0x7F,0xB0, 0x4F,0xFF,0xFE,0xDF,0xB0, 0xCF,0xE3,0x04,0xEF,0xB0, 0xFF,0x60,0x00,0x6F,0xA0, 0xFF,0x60,0x00,0x8F,0x80, 0xAF,0xC2,0x05,0xEF,0x40, 0x2F,0xFF,0xFF,0xF9,0x00, 0x02,0xBF,0xFE,0x60,0x00 }; const sprite_data_t N9_sprt = { N9_data, 13, 9 }; const unsigned char dot_data[] = { 0xBF,0xF0, 0xBF,0xF0, 0xBF,0xF0, 0x00,0x00, 0x00,0x00, 0x00,0x00, 0x00,0x00, 0x00,0x00, 0x00,0x00, 0x00,0x00, 0x00,0x00, 0x00,0x00, 0x00,0x00 }; const sprite_data_t dot_sprt = { dot_data, 13, 3 }; const unsigned char plus_data[] = { 0x00,0x09,0xF2,0x00,0x00, 0x00,0x09,0xF2,0x00,0x00, 0x00,0x09,0xF2,0x00,0x00, 0x00,0x09,0xF2,0x00,0x00, 0xFF,0xFF,0xFF,0xFF,0xF0, 0xFF,0xFF,0xFF,0xFF,0xF0, 0x00,0x09,0xF2,0x00,0x00, 0x00,0x09,0xF2,0x00,0x00, 0x00,0x09,0xF2,0x00,0x00, 0x00,0x09,0xF2,0x00,0x00, 0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00 }; const sprite_data_t plus_sprt = { plus_data, 13, 9 }; const unsigned char minus_data[] = { 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x7F,0xFF,0x60, 0x7F,0xFF,0x60, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00, 0x00,0x00,0x00 }; const sprite_data_t minus_sprt = { minus_data, 13, 5 };