const uint8_t DATA_PIN = 2; // Q7
const uint8_t CLOCK_PIN = 3; // CP
const uint8_t LATCH_PIN = 4; // PL
// ビット数 (8 * レジスタ数)
const uint8_t NUM_BITS = 8;
void setup() {
Serial.begin(115200);
pinMode(DATA_PIN, INPUT);
pinMode(CLOCK_PIN, OUTPUT);
pinMode(LATCH_PIN, OUTPUT);
}
void loop() {
// 入力情報の取得
digitalWrite(LATCH_PIN, LOW);
digitalWrite(LATCH_PIN, HIGH);
// 入力情報の表示
uint8_t bit = 0;
for(uint8_t i = 0; i < NUM_BITS; i++) {
bit = digitalRead(DATA_PIN);
Serial.print((bit == HIGH) ? "1" : "0");
// 次のビットに移動
digitalWrite(CLOCK_PIN, HIGH);
digitalWrite(CLOCK_PIN, LOW);
}
Serial.println();
delay(1000);
}