arduino_cava/arduino_cava.ino

33 lines
697 B
Arduino
Raw Normal View History

2023-03-04 16:35:51 -06:00
#include "LedControl.h"
2023-04-02 15:36:14 -05:00
LedControl leds = LedControl(2, 4, 3, 3);
2023-03-04 16:35:51 -06:00
void setup() {
for (int i = 0; i < leds.getDeviceCount(); i++) {
leds.shutdown(i, false);
leds.clearDisplay(i);
}
Serial.begin(1000000);
}
void loop() {
if (Serial.available()) {
String line = Serial.readStringUntil('\n');
for (int i = 0; i < line.length(); i += 2) {
int x = i / 2;
int y = (int) line.charAt(i) - '0';
byte val = 0;
for (int j = 0; j <= y; j++) {
val ^= (1 << j);
}
2023-04-02 15:36:14 -05:00
if (x > 15) {
leds.setRow(2, x-16, val);
} else if (x > 7) {
leds.setRow(1, 15-x, val);
2023-03-04 16:35:51 -06:00
} else {
leds.setRow(0, x, val);
}
}
}
}