#include <ShiftRegister74HC595.h>
// Antal shift-register för rader och kolumner
#define NUM_ROW_REGISTERS 2
#define NUM_COL_REGISTERS 2
// Pin-konfiguration
const int latchPin = 4; // StCP (Låspinne)
const int clockPin = 3; // SHCP (Klockpinne)
const int dataPin = 2; // DS (Datapinne)
// Skapa ShiftRegister-objekt för rader och kolumner
ShiftRegister74HC595<NUM_ROW_REGISTERS> rowShiftRegister(latchPin, clockPin, dataPin);
ShiftRegister74HC595<NUM_COL_REGISTERS> colShiftRegister(latchPin, clockPin, dataPin);
void setup() {
// Testa att tända en rad och en kolumn
rowShiftRegister.setAllHigh(); // Stäng av alla rader först
colShiftRegister.setAllHigh(); // Stäng av alla kolumner först
}
void loop() {
// Tänd en rad och en kolumn
for (int i = 0; i < 8; i++) {
// Tänd en kolumn genom att sätta den till LOW
colShiftRegister.setAllHigh();
colShiftRegister.set(i, LOW);
// Tänd en rad genom att sätta den till LOW
rowShiftRegister.setAllHigh();
rowShiftRegister.set(i, LOW);
delay(200); // Kort paus för att visa varje kombination
}
}