-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathSpectra.ino
More file actions
54 lines (51 loc) · 1.85 KB
/
Spectra.ino
File metadata and controls
54 lines (51 loc) · 1.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// All unique fades, in lexicographic order.
// Ignore fades of constant hue, since these hues are hit otherwise.
unsigned char allFades[22] = {
Command | RedOff | GreenOff | BlueOff, // Black, as reference
//Command | RedOff | GreenOff | BlueUp, -- just blues
Command | RedOff | GreenOn | BlueUp, // - lime to turquose
//Command | RedOff | GreenUp | BlueOff, -- just greens
Command | RedOff | GreenUp | BlueOn, // deep blue to bluish white
//Command | RedOff | GreenUp | BlueUp, -- bluish white hue
Command | RedOff | GreenUp | BlueDown,
Command | RedOn | GreenOff | BlueUp,
Command | RedOn | GreenOn | BlueUp,
Command | RedOn | GreenUp | BlueOff,
Command | RedOn | GreenUp | BlueOn,
Command | RedOn | GreenUp | BlueUp,
Command | RedOn | GreenUp | BlueDown,
//Command | RedUp | GreenOff | BlueOff, -- just whites
Command | RedUp | GreenOff | BlueOn,
//Command | RedUp | GreenOff | BlueUp,
Command | RedUp | GreenOff | BlueDown,
Command | RedUp | GreenOn | BlueOff,
Command | RedUp | GreenOn | BlueOn,
Command | RedUp | GreenOn | BlueUp,
Command | RedUp | GreenOn | BlueDown,
//Command | RedUp | GreenUp | BlueOff,
Command | RedUp | GreenUp | BlueOn,
//Command | RedUp | GreenUp | BlueUp,
Command | RedUp | GreenUp | BlueDown,
Command | RedUp | GreenDown | BlueOff,
Command | RedUp | GreenDown | BlueOn,
Command | RedUp | GreenDown | BlueUp,
Command | RedUp | GreenDown | BlueDown,
};
// Shrink must be >= 1.
void testSpectra() {
int lastAux = -1;
while(auxPresses != lastAux) {
lastAux = auxPresses;
int count;
strip.setAll(Command);
strip.sendByte(allFades[auxPresses % 28]);
for(count = 0; count < 128; count++) {
strip.fade();
strip.sendByte(Noop);
strip.latch();
}
while(keepGoing() && (lastAux == auxPresses)) {
delay(10);
}
}
}