Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Date and time functions using a DS1307 RTC connected via I2C and Wire lib
- #include <Wire.h>
- #include "RTClib.h"
- RTC_DS1307 rtc;
- const int LED_1 = 13; //LED row 1
- const int LED_2 = 12; //LED row 2
- const int LED_3 = 11; //LED row 3
- const int LED_4 = 10; //LED row 4
- const int LED_5 = 9; //LED row 5
- const int LED_6 = 8; //LED row 6
- const int LED_7 = 7; //LED row 7
- const int LED_8 = 6; //LED row 8
- const int LED_9 = 5; //LED row 9
- const int LED_10 = 4; //LED row 10
- const int LED_11 = 3; //LED row 11
- void setup ()
- {
- Serial.begin(57600);
- Wire.begin();
- rtc.begin();
- // Check to see if rtc is running
- if (! rtc.isrunning() ){
- Serial.println("RTC is NOT running!");
- }
- //Set the date and time
- rtc.adjust(DateTime(2016,10,23,20,37,00) );
- }
- void loop () {
- //Get the date and time
- DateTime now = rtc.now();
- //Print out the date and time to the serial line
- Serial.print(now.year(),DEC);
- Serial.print('/');
- Serial.print(now.month(), DEC);
- Serial.print('/');
- Serial.print(now.day(), DEC);
- Serial.print('/');
- Serial.print(now.hour(), DEC);
- Serial.print('/');
- Serial.print(now.minute(), DEC);
- Serial.print('/');
- Serial.print(now.second(), DEC);
- Serial.println();
- //Check to see if it is time to light the LED or to turn it off.
- if (now.hour() == 00)
- {
- //turn on LED L1(MIDNIGHT)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, OUTPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, OUTPUT); //row 2
- digitalWrite(LED_8, HIGH);
- pinMode(LED_9, INPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, INPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.hour() == 01|13)
- {
- //turn on LED L1(ONE)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, OUTPUT); //row 1
- digitalWrite(LED_7, HIGH);
- pinMode(LED_8, INPUT); //row 2
- digitalWrite(LED_8, LOW);
- pinMode(LED_9, INPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(3, OUTPUT); //row 4
- digitalWrite(3, LOW);
- }
- if (now.hour() == 02||14)
- {
- //turn on LED L2(TWO)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, INPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, OUTPUT); //row 2
- digitalWrite(LED_8,HIGH);
- pinMode(LED_9, INPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, OUTPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.hour() == 03|15)
- {
- //turn on LED L3(THREE)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, INPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, INPUT); //row 2
- digitalWrite(LED_8,LOW);
- pinMode(LED_9, OUTPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, OUTPUT); //row 4
- digitalWrite(LED_10, HIGH);
- }
- if (now.hour() == 04|16)
- {
- //turn on LED L3(four)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_11, OUTPUT); //row 1
- digitalWrite(LED_11, HIGH);
- }
- if (now.hour() == 05|17)
- {
- //turn on LED L3(FIVE)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, OUTPUT); //row 1
- digitalWrite(LED_7, HIGH);
- pinMode(LED_8, INPUT); //row 2
- digitalWrite(LED_8, LOW);
- pinMode(LED_9, OUTPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, INPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.hour() == 06|18)
- {
- //turn on LED L3(SIX)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, OUTPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, INPUT); //row 2
- digitalWrite(LED_8, LOW);
- pinMode(LED_9, INPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, OUTPUT); //row 4
- digitalWrite(LED_10, HIGH);
- }
- if (now.hour() == 07|19)
- {
- //turn on LED L3(SEVEN)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, OUTPUT); //row 1
- digitalWrite(LED_7, HIGH);
- pinMode(LED_8, OUTPUT); //row 2
- digitalWrite(LED_8, LOW);
- pinMode(LED_9, INPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, INPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.hour() == 8|20)
- {
- //turn on LED L3(EIGHT)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, INPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, INPUT); //row 2
- digitalWrite(LED_8,LOW);
- pinMode(LED_9, OUTPUT); //row 3
- digitalWrite(LED_9, HIGH);
- pinMode(LED_10, OUTPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.hour() == 9|21)
- {
- //turn on LED L3(NINE)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, INPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, OUTPUT); //row 2
- digitalWrite(LED_8,LOW);
- pinMode(LED_9, INPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, OUTPUT); //row 4
- digitalWrite(LED_10, HIGH);
- }
- if (now.hour() == 10|22)
- {
- //turn on LED L3(TEN)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, INPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, OUTPUT); //row 2
- digitalWrite(LED_8, LOW);
- pinMode(LED_9, OUTPUT); //row 3
- digitalWrite(LED_9, HIGH);
- pinMode(LED_10, INPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.hour() == 11|23)
- {
- //turn on LED L3(ELEVEN)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, OUTPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, INPUT); //row 2
- digitalWrite(LED_8, LOW);
- pinMode(LED_9, OUTPUT); //row 3
- digitalWrite(LED_9, HIGH);
- pinMode(LED_10, INPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.hour() == 12)
- {
- //turn on LED L3(TWELVE)
- pinMode(LED_6, OUTPUT); //row 1
- digitalWrite(LED_6, HIGH);
- pinMode(LED_7, INPUT); //row 1
- digitalWrite(LED_7, LOW);
- pinMode(LED_8, OUTPUT); //row 2
- digitalWrite(LED_8, HIGH);
- pinMode(LED_9, OUTPUT); //row 3
- digitalWrite(LED_9, LOW);
- pinMode(LED_10, INPUT); //row 4
- digitalWrite(LED_10, LOW);
- }
- if (now.minute() > 2 && now.minute() <8 |now.minute() > 52 && now.minute () < 58)
- {
- //turn on LED L1(FIVE)
- pinMode(LED_1,INPUT); //row 1
- digitalWrite(LED_1, LOW);
- pinMode(LED_2, OUTPUT); //row 2
- digitalWrite(LED_2,HIGH);
- pinMode(LED_3, OUTPUT); //row 3
- digitalWrite(LED_3, LOW);
- }
- if (now.minute() > 7 && now.minute() <13 |now.minute() > 47 && now.minute () < 53)
- {
- //turn on LED L1(TEN)
- pinMode(LED_1, OUTPUT); //row 1
- digitalWrite(LED_1, LOW);
- pinMode(LED_2, INPUT); //row 2
- digitalWrite(LED_2, LOW);
- pinMode(LED_3, OUTPUT); //row 3
- digitalWrite(LED_3, HIGH);
- }
- if (now.minute() > 12 && now.minute() <18 |now.minute() > 42 && now.minute () < 48)
- {
- //turn on LED L1(QUARTER)
- pinMode(LED_1,OUTPUT); //row 1
- digitalWrite(LED_1, LOW);
- pinMode(LED_2, OUTPUT); //row 2
- digitalWrite(LED_2,HIGH);
- pinMode(LED_3, INPUT); //row 3
- digitalWrite(LED_3, LOW);
- }
- if (now.minute() > 2 && now.minute() <8 |now.minute() > 52 && now.minute () < 58)
- {
- //turn on LED L1(FIVE)
- pinMode(LED_1,INPUT); //row 1
- digitalWrite(LED_1, LOW);
- pinMode(LED_2, OUTPUT); //row 2
- digitalWrite(LED_2,HIGH);
- pinMode(LED_3, OUTPUT); //row 3
- digitalWrite(LED_3, LOW);
- }
- if (now.minute() > 7 && now.minute() <13 |now.minute() > 47 && now.minute () < 53)
- {
- //turn on LED L1(TEN)
- pinMode(LED_1, OUTPUT); //row 1
- digitalWrite(LED_1, LOW);
- pinMode(LED_2, INPUT); //row 2
- digitalWrite(LED_2, LOW);
- pinMode(LED_3, OUTPUT); //row 3
- digitalWrite(LED_3, HIGH);
- }
- if (now.minute() > 17 && now.minute() <23 |now.minute() > 37 && now.minute () < 43)
- {
- //turn on LED L1(TWENTY)
- pinMode(LED_1, OUTPUT); //row 1
- digitalWrite(LED_1, HIGH);
- pinMode(LED_2, INPUT); //row 2
- digitalWrite(LED_2, LOW);
- pinMode(LED_3, OUTPUT); //row 3
- digitalWrite(LED_3, LOW);
- }
- if (now.minute() > 22 && now.minute() <28 |now.minute() > 32 && now.minute () < 38)
- {
- //turn on LED L1(TWENTYFIVE)
- pinMode(LED_1, INPUT); //row 1
- digitalWrite(LED_1, LOW);
- pinMode(LED_2, OUTPUT); //row 2
- digitalWrite(LED_2, LOW);
- pinMode(LED_3, OUTPUT); //row 3
- digitalWrite(LED_3, HIGH);
- }
- if (now.minute() > 27 && now.minute() <33)
- {
- //turn on LED L1(HALF)
- pinMode(LED_1, OUTPUT); //row 1
- digitalWrite(LED_1, LOW);
- pinMode(LED_2, OUTPUT); //row 2
- digitalWrite(LED_2, HIGH);
- pinMode(LED_3, INPUT); //row 3
- digitalWrite(LED_3, LOW);
- }
- if (now.minute() > 2 && now.minute () <38)
- {
- //turn on LED L1(PAST)
- pinMode(LED_4, OUTPUT); //row 1
- digitalWrite(LED_4, HIGH);
- pinMode(LED_5, OUTPUT); //row 2
- digitalWrite(LED_5, LOW);
- }
- if (now.minute() > 32 && now.minute () <58)
- {
- //turn on LED L1(PAST)
- pinMode(LED_4, OUTPUT); //row 1
- digitalWrite(LED_4, LOW);
- pinMode(LED_5, OUTPUT); //row 2
- digitalWrite(LED_5, HIGH);
- }
- Serial.println();
- delay(1000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement