#include <LedControl.h>
// Ustawienia dla modułu MAX7219
#define DATA_IN 11
#define CLK 13
#define LOAD 10
#define MAX_DEVICES 1
LedControl lc = LedControl(DATA_IN, CLK, LOAD, MAX_DEVICES);
// Grafiki w formacie szesnastkowym
byte serce[8] = {
0x66,0x99,0x81,0x81,0x42,0x24,0x18,0x00,
};
byte serce2[8] = {
0xFF,0xFF,0xDB,0x81,0x81,0xC3,0xE7,0xFF,
};
byte serce3[8] = {
0xDB,0x81,0x00,0x00,0x00,0x81,0xC3,0xE7,
};
byte ludzik[8] = {
0x00,0x08,0x08,0x1C,0x7F,0x3E,0x1C,0x36,
};
byte plus[8] = {
0x18,0x18,0x18,0xFF,0xFF,0x18,0x18,0x18,
};
byte smiley[8] = {
0x00,0x00,0x24,0x24,0x00,0x42,0x3C,0x00,
};
byte jezyk[8] = {
0x14,0x14,0x00,0x7E,0x12,0x12,0x0C,0x00,
};
byte gwiazdka[8] = {
0x49,0x2A,0x1C,0x7F,0x1C,0x2A,0x49,0x00,
};
byte meduza[8] = {
0x3C,0x7E,0xFF,0xDB,0x7E,0x3C,0x7E,0xDB,
};
byte krolik[8] = {
0x42,0x66,0x24,0x18,0x3C,0x5A,0xFF,0x66,
};
byte robot[8] = {
0x3F,0x2D,0x3F,0x21,0x3F,0x12,0x36,0x00,
};
void setup() {
// Inicjalizacja modułu MAX7219
lc.shutdown(0, false);
lc.setIntensity(0, 8); // Ustaw jasność (0-15 możliwe wartości)
lc.clearDisplay(0);
// Wyświetl grafiki
displayGraphic(serce);
delay(1000);
displayGraphic(serce2);
delay(1000);
displayGraphic(serce3);
delay(1000);
displayGraphic(ludzik);
delay(1000);
displayGraphic(gwiazdka);
delay(1000);
displayGraphic(smiley);
delay(1000);
displayGraphic(jezyk);
delay(1000);
displayGraphic(plus);
delay(1000);
displayGraphic(meduza);
delay(1000);
displayGraphic(krolik);
delay(1000);
displayGraphic(robot);
}
void loop() {
// Puste, ponieważ chcemy wyświetlić grafiki tylko raz
}
// Funkcja wyświetlająca grafikę na panelu LED
void displayGraphic(byte graphic[]) {
for (int i = 0; i < 8; i++) {
lc.setRow(0, i, graphic[i]);
}
}