#define DATA_IN 11
#define CLK 13
#define CS 10
void sendData(byte address, byte value) {
digitalWrite(CS, LOW);
shiftOut(DATA_IN, CLK, MSBFIRST, address);
shiftOut(DATA_IN, CLK, MSBFIRST, value);
digitalWrite(CS, HIGH);
}
void clearDisplay() {
for (byte i = 1; i <= 8; i++) {
sendData(i, 0x00);
}
}
void setRow(byte row, byte value) {
sendData(row, value);
}
void setup() {
pinMode(DATA_IN, OUTPUT);
pinMode(CLK, OUTPUT);
pinMode(CS, OUTPUT);
}
void loop() {
byte pattern[] = {1, 2, 4, 8, 16, 32, 64, 128};
/*
for (int j = 0; j < 8; j++)
{
for (byte i = 0; i < 8; i++) {
setRow(i + 1, pattern[i] + (j * 8));
}
delay(1000);
}
*/
for (byte i = 0; i < 8; i++) {
setRow(i + 1, pattern[i]);
}
delay(1000);
}