#include <LedControl.h>
const int DIN_PIN = 11;
const int CS_PIN = 9;
const int CLK_PIN = 13;
/*const uint64_t IMAGES[] = {
0xff000001010000ff, 0xff000003030000ff, 0xff000006060000ff,
0xff00000c0c0000ff, 0xff000018180000ff, 0xff000030300000ff,
0xff000060600000ff, 0xff0000c0c00000ff, 0xff000080800000ff,
0xff0000c0c00000ff, 0xff000060600000ff, 0xff000018180000ff,
0xff00000c0c0000ff, 0xff000006060000ff, 0xff000003030000ff,
0xff000001010000ff
};
const int IMAGES_LEN = sizeof(IMAGES)/8;*/
/*
const uint64_t IMAGES[] = {
0x42ff425a5a42ff42
};
const int IMAGES_LEN = sizeof(IMAGES)/8;*/
/*
const uint64_t IMAGES[] = {
0x42ff665a5a66ff42
};
const int IMAGES_LEN = sizeof(IMAGES)/8;*/
const uint64_t IMAGES[] = {
0x0000000000000000,
0x0100000000000080,
0x03000000000000c0,
0x07010000000080e0,
0x0f010100008080f0,
0x1f010101808080f8,
0x9f010101808080f9,
0xdf810101808081fb,
0xdf812101808481fb,
0xdf813121848c81fb,
0xdf8131318c8c81fb,
0xdf81013dbc8081fb,
0xdf810d0db0b081fb,
0xdf81013dbc8081fb,
0xdf8131318c8c81fb,
0xdf8331318c8cc1fb,
0xdf8335318cacc1fb,
0xdf8737318cece1fb,
0xdfc737318cece3fb,
0xdfc737399cece3fb,
0xffc737399cece3ff,
0xffc7b7b99dede3ff,
0xffc7f7fbdfefe3ff,
0xfffff7fbdfefffff,
0xffffffffffffffff
};
const int IMAGES_LEN = sizeof(IMAGES)/8;
/*const uint64_t IMAGES[] = {
0x0f000000000000f0,
0x0f000000000000f0,
0x3f000000000000fc,
0xff000000000000ff,
0xf88080000001011f,
0xfb818000000181df,
0xfb818018180181df,
0xfb81a418182581df
};
const int IMAGES_LEN = sizeof(IMAGES)/8;
*/
/*const uint64_t IMAGES[] = {
0x0000000000000000,
0x0080808080808000,
0x0040c04040c04000,
0x0060a02020a06000,
0x002060a0a0602000,
0x0010305050301000,
0x008898a8a8988800,
0x00444cd454cc4400,
0x006266ea6ae66200,
0x00a2a66a6aa66200
};
const int IMAGES_LEN = sizeof(IMAGES)/8;*/
/*const uint64_t IMAGES[] = {
0x0000000000000000,
0xe7c3a51818a5c3e7
};
const int IMAGES_LEN = sizeof(IMAGES)/8;*/
LedControl display = LedControl(DIN_PIN, CLK_PIN, CS_PIN);
void setup() {
display.clearDisplay(0);
display.shutdown(0, false);
display.setIntensity(0, 10);
}
void displayImage(uint64_t image) {
for (int i = 0; i < 8; i++) {
byte row = (image >> i * 8) & 0xFF;
for (int j = 0; j < 8; j++) {
display.setLed(0, i, j, bitRead(row, j));
}
}
}
int i = 0;
void loop() {
displayImage(IMAGES[i]);
if (++i >= IMAGES_LEN ) {
i = 0;
}
delay(100);
}