Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<LiquidCrystal.h>
- #include <Time.h>
- #include <Wire.h>
- #include <DS1307RTC.h>
- #include <Servo.h>
- #define SERVO_PIN 10
- LiquidCrystal lcd(2,3,4,5,6,7);
- Servo servo; //define object to control servo
- int tts[6] = {0, 0, 0, 0, 0, 0}; //define array with time to start
- void setup()
- {
- servo.attach(SERVO_PIN);
- lcd.begin(16,2);
- setSyncProvider(RTC.get); // получение сигнала RTC
- //set date to start moving servo
- tts[0] = 32; //sec
- tts[1] = 12; //min
- tts[2] = 00; //hour
- tts[3] = 25; //day
- tts[4] = 8; //month
- tts[5] = 2016; //year
- }
- void loop()
- {
- lcd.setCursor(0,1);
- if (timeStatus() == timeSet)
- {
- digitalClockDisplay();
- }
- else
- {
- lcd.println("The time has not been set. PleaseruntheTime");// Времени не было установлено. Пожалуйста, запустите время
- lcd.println("TimeRTCSetexample, or DS1307RTC SetTimeexample.");// Пример TimeRTCSet, или DS1307RTC пример SetTime
- lcd.println();
- delay(4000);
- }
- if((second() == tts[0]) && (minute() == tts[1]) && (hour() == tts[2])
- && (day() == tts[3]) && (month() == tts[4]) && (year() == tts[5]))
- {
- servo.write(45);
- delay(1000);
- servo.write(0);
- delay(1000);
- servo.write(90);
- delay(1000);
- servo.write(0);
- delay(1000);
- }
- delay(1000);
- }
- void digitalClockDisplay()
- {
- // цифровой дисплей часов времени
- lcd.print(hour());
- printDigits(minute());
- printDigits(second());
- lcd.print(" ");
- lcd.print(day());
- lcd.print(" ");
- lcd.print(month());
- lcd.print(" ");
- lcd.print(year());
- lcd.println();
- }
- void printDigits(int digits) {
- // utility function for digital clock display: prints preceding colon and leading 0
- lcd.print(":");
- if(digits < 10)
- lcd.print('0');
- lcd.print(digits);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement