Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int delayMins = 2 // Delay in minuites between states
- /*
- INDEXES
- 0 -> North
- 1 -> East
- 2 -> South
- 3 -> West
- */
- int dataPins[] = [0, 3, 6, 9];
- int latchPins[] = [1, 4, 7, 10];
- int clockPins[] = [2, 5, 8, 11];
- byte leds[] = [0, 0, 0, 0];
- void setup()
- {
- for (int i = 0; i < 4; i++)
- {
- pinMode(latchPins[i], OUTPUT);
- }
- for (int i = 0; i < 4; i++)
- {
- pinMode(dataPins[i], OUTPUT);
- }
- for (int i = 0; i < 4; i++)
- {
- pinMode(clockPins[i], OUTPUT);
- }
- }
- void updateShiftRegister(int dir)
- {
- digitalWrite(latchPins[dir], LOW);
- shiftOut(dataPins[dir], clockPins[dir], LSBFIRST, leds[dir]);
- digitalWrite(latchPins[dir], HIGH);
- }
- void loop()
- {
- // State 1
- leds[0] = B00110010; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 2
- leds[0] = B00110110; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001100; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 3
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00110010; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 4
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00001100; // East
- updateShiftRegister(1);
- leds[2] = B00110110; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 5
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00110010; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 6
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00110110; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00001100; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 7
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00110010; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 8
- leds[0] = B00001100; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001100; // South
- updateShiftRegister(2);
- leds[3] = B00110110; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 9
- leds[0] = B00100010; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00100010; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 10
- leds[0] = B00100110; // North
- updateShiftRegister(0);
- leds[1] = B00001100; // East
- updateShiftRegister(1);
- leds[2] = B00100110; // South
- updateShiftRegister(2);
- leds[3] = B00001100; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 11
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00100010; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00100010; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 12
- leds[0] = B00001100; // North
- updateShiftRegister(0);
- leds[1] = B00100110; // East
- updateShiftRegister(1);
- leds[2] = B00001100; // South
- updateShiftRegister(2);
- leds[3] = B00100110; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 13
- leds[0] = B00010010; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00010010; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 14
- leds[0] = B00010110; // North
- updateShiftRegister(0);
- leds[1] = B00001100; // East
- updateShiftRegister(1);
- leds[2] = B00010110; // South
- updateShiftRegister(2);
- leds[3] = B00001100; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 15
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00010010; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00010010; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 16
- leds[0] = B00001100; // North
- updateShiftRegister(0);
- leds[1] = B00010110; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00010110; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 17
- leds[0] = B00010011; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 18
- leds[0] = B00010111; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001100; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 19
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00010011; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 20
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00001100; // East
- updateShiftRegister(1);
- leds[2] = B00010111; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 21
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00010011; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00001000; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 22
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00010111; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00001100; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 23
- leds[0] = B00001000; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00010011; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- // State 24
- leds[0] = B00001100; // North
- updateShiftRegister(0);
- leds[1] = B00001000; // East
- updateShiftRegister(1);
- leds[2] = B00001000; // South
- updateShiftRegister(2);
- leds[3] = B00010111; // West
- updateShiftRegister(3);
- delay(delayMins * 60 * 1000); // Desired time delay
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement