#include <LedControl.h>
int ledDIN = 13;
int ledCS = 12;
int ledCLK = 11;
LedControl lc=LedControl(ledDIN,ledCLK,ledCS,0);
int rowPL = 10;
int rowCP = 9;
int rowQ7 = 8;
int rowCE = 7;
void setup(){
lc.shutdown(0,false);
lc.setIntensity(0,15);
pinMode(rowQ7, INPUT);
pinMode(rowPL, OUTPUT);
pinMode(rowCP, OUTPUT);
pinMode(rowCE, OUTPUT);
//Serial.begin(9600);
}
void loop(){
digitalWrite(rowPL, LOW);
digitalWrite(rowPL, HIGH);
digitalWrite(rowCP, HIGH);
digitalWrite(rowCE, LOW);
byte incoming = shiftIn(rowQ7, rowCP, MSBFIRST);
digitalWrite(rowCE, HIGH);
lc.setRow(0, 7, incoming);
//Serial.println(incoming, BIN);
//delay(500);
//printMove("a5g5");
}
void printMove(char move[]) {
if (move[1] != move[3]) {
lc.setRow(0, 7 - (move[1] - '1'), pow(2, move[0] - 'a'));
lc.setRow(0, 7 - (move[3] - '1'), pow(2, move[2] - 'a'));
} else {
lc.setRow(0, 7 - (move[1] - '1'), pow(2, move[0] - 'a') + pow(2, move[2] - 'a'));
}
}