-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathLEDArray.ino
More file actions
38 lines (36 loc) · 1013 Bytes
/
LEDArray.ino
File metadata and controls
38 lines (36 loc) · 1013 Bytes
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
void setup() {
// initialize all pins as output
pinMode(A0, OUTPUT);
pinMode(A1, OUTPUT);
pinMode(A2, OUTPUT);
pinMode(A3, OUTPUT);
pinMode(A4, OUTPUT);
pinMode(A5, OUTPUT);
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
pinMode(3, OUTPUT);
pinMode(2, OUTPUT);
}
//Programs to run
typedef void (*vvFunction)();
vvFunction functions[] = {diagonalRun, gameOfLifeRun, rainRun, planeBoingRun, sendPixelRun, sineRun, timeRun};
int functionIndex = 0;
void loop() {
// Run the programs in the loop
unsigned long startTime = millis();
unsigned long currentTime = millis();
unsigned long programDuration = 120000;
while (currentTime - startTime < programDuration) {
currentTime = millis();
functions[functionIndex]();
}
functionIndex = (functionIndex + 1) % (sizeof(functions) / sizeof(vvFunction));
}