#include <DS3231.h>
#include <Stepper.h>
#include <Wire.h>
RTClib myRTC;
#define STEPS 32
int Steps2Take;
Stepper minuteOnesStepper(STEPS, 2, 3, 4, 5);
Stepper minuteTensStepper(STEPS, 6, 7, 8, 9);
Stepper hourOnesStepper(STEPS, 10, 11, 12, 13);
Stepper hourTensStepper(STEPS, 14, 15, 16, 17);
unsigned long previousMillis = 0;
char daysOfTheWeek[7][12] = {
"Sunday", "Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday"
};
int oldMinuteOnes = 0;
int oldMinuteTens = 0;
int oldHourOnes = 0;
int oldHourTens = 0;
void setup () {
minuteOnesStepper.setSpeed(500);
minuteTensStepper.setSpeed(500);
hourOnesStepper.setSpeed(500);
hourTensStepper.setSpeed(500);
Serial.begin(115200);
Wire.begin();
delay(500);
Serial.print("Go For Time");
}
void loop () {
DateTime now = myRTC.now();
int minuteOnes = now.minute() % 10;
int minuteTens = now.minute() / 10;
int hourOnes = now.hour() % 10;
int hourTens = now.hour() / 10;
if (now.minute() != oldMinuteOnes && minuteOnes != oldMinuteOnes) {
oldMinuteOnes = minuteOnes;
minuteOnesStepper.step(200);
}
if (now.minute() != oldMinuteTens && minuteTens != oldMinuteTens) {
oldMinuteTens = minuteTens;
minuteTensStepper.step(200);
}
if (now.hour() != oldHourOnes && hourOnes != oldHourOnes) {
oldHourOnes = hourOnes;
hourOnesStepper.step(200);
}
if (now.hour() != oldHourTens && hourTens != oldHourTens) {
oldHourTens = hourTens;
hourTensStepper.step(200);
}
}