내 프로젝트 및 RTC 용 Real-Time Clock 모듈 인 Arduino mini 5V를 사용하고 있습니다. DS1307 특정 시간에 보드를 깨우고 기능을 실행하고 싶습니다. 혼자 수동으로 TimeAlarm를 사용 설정하면Arduino 미니를 사용하는 RTC + Scheduler
은 시간 모든 작동합니다 (부저가 D3에 연결) : 나는 RTC를 사용하는 경우에는 부저 함수가 호출되지 것
#include "Time.h"
#include "TimeAlarms.h"
void setup(){
setTime(22,29,55,12,31,14); // set time to Saturday 8:29:00am Jan 1 2011
Alarm.alarmRepeat(10,30,0,buzz); // 10:30am every day
Alarm.alarmRepeat(16,30,0,buzz); // 4:30pm every day
Alarm.alarmRepeat(22,30,0,buzz); // 10:30pm every day
Serial.begin(9600);
}
void loop(){
digitalClockDisplay();
Alarm.delay(1000);
}
void buzz(){
tone(3, 220, 1000);
}
void digitalClockDisplay(){
// digital clock display of the time
Serial.print(hour());
printDigits(minute());
printDigits(second());
Serial.println();
}
void printDigits(int digits){
Serial.print(":");
if(digits < 10)
Serial.print('0');
Serial.print(digits);
}
,
첫 페이지 : 여전히
#include <Wire.h>
#include "RTClib.h"
#include "Time.h"
#include "TimeAlarms.h"
RTC_Millis rtc;
void setup(){
rtc.begin(DateTime(F(__DATE__), F(__TIME__)));
Alarm.alarmRepeat(10,30,0,buzz); // 10:30am every day
Alarm.alarmRepeat(16,30,0,buzz); // 4:30pm every day
Alarm.alarmRepeat(22,30,0,buzz); // 10:30pm every day -- modify this to your current time when running the example
Serial.begin(9600);
}
void loop(){
//printing the current time
DateTime now = rtc.now();
Serial.print(now.year());
Serial.print('/');
Serial.print(now.month());
Serial.print('/');
Serial.print(now.day());
Serial.print(' ');
Serial.print(now.hour());
Serial.print(':');
Serial.print(now.minute());
Serial.print(':');
Serial.print(now.second());
Serial.println();
Alarm.delay(1000); // wait one second between clock display
}
void buzz(){
tone(3, 220, 1000);
}
에 같은 변경,하지만 난 참조를 참조하지 마십시오 주석의 일부임을 발견 하단 스 니펫에서 '부저'로 ... –
개인 정보 보호를 위해이 예를 편집해야했습니다. 그래서 여기에서 나는 그것을 바로 고쳤다. 언급 해 주셔서 감사합니다! –
익명화 된 축소 버전을 실행할 수 있습니까? 위의 코드는 –