/*
74HC595 Shift Register Demonstration 1
74hc595-demo.ino
Count in Binary and display on 8 LEDs
Modified from "Hello World" example by Carlyn Maw,Tom Igoe and David A. Mellis
DroneBot Workshop 2020
https://dronebotworkshop.com
*/
// Define Connections to 74HC595
/*int SER = 8;
int LATCH = 9;
int CLK = 10;
*/
// ST_CP pin 12
const int latchPin = 10;
// SH_CP pin 11
const int clockPin = 11;
// DS pin 14
const int dataPin = 12;
byte numberToDisplay = 0;
void setup ()
{
// Setup pins as Outputs
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
Serial.begin(115200);
}
void loop() {
int myLed = random(0, 8);
numberToDisplay = 0;
sendto595();
delay(1000);
Serial.println(myLed);
bitSet(numberToDisplay, (myLed));
sendto595();
delay(1000);
}
void sendto595()
{
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, MSBFIRST, numberToDisplay);
digitalWrite(latchPin, HIGH);
}
/*
int SER = 12;
int LATCH = 10;
int CLK = 11;
void setup()
{
pinMode(SER, OUTPUT);
pinMode(LATCH, OUTPUT);
pinMode(CLK, OUTPUT);
for (int i = 0; i < 10; i++)
{
digitalWrite(LATCH, LOW);
shiftOut(SER, CLK, MSBFIRST, B10101010);
digitalWrite(LATCH, HIGH);
delay(500);
digitalWrite(LATCH, LOW);
shiftOut(SER, CLK, MSBFIRST, B01010101);
digitalWrite(LATCH, HIGH);
delay(500);
}
}
void loop() {}*/