byte PISOdata = 3; //input from SiPo
byte PISOlatch = 4; //latch for SiPo, LOW=load
byte PISOclk = 5; //SiPo clock
byte PISOreceivedData;
void setup()
{
pinMode(PISOdata, INPUT);
pinMode(PISOlatch, OUTPUT);
pinMode(PISOclk, OUTPUT);
Serial.begin(9600);
}
void loop()
{
digitalWrite(PISOlatch, LOW); //load register
digitalWrite(PISOlatch, HIGH); //register at high, to allow reading
for (byte i = 0; i < 8; i++)
{
digitalWrite(PISOclk, LOW);
digitalWrite(PISOclk, HIGH);
Serial.print(digitalRead(PISOdata));
}
Serial.println();
}