arduino uno r4 minimaのRTCについて。数日で30分程度ずれたのですが、なぜか分かりますか。
元々アラームを鳴らすプログラムを書いていて、予定より早くアラームが鳴ったので原因を確かめるために一時間ごとに時刻が0分のときだけLEDを光らせるようにしてました。RTCの設定時刻に合わせて(日付以外)、00:00にarduinoを起動し、数日(おそらく2日)の稼働させましたが、時刻が大体30分になった時にLEDが光りました。(n時間+30分ズレた可能性もあります)
arduino
1#include "RTC.h" 2void setup(){ 3 RTC.begin(); 4 RTCTime startTime(30, Month::JANUARY, 2000, 0, 0, 00, DayOfWeek::SUNDAY, SaveLight::SAVING_TIME_ACTIVE); 5 RTC.setTime(startTime); 6} 7 8int getElapsedMinutesToday(){ 9 RTCTime now; 10 RTC.getTime(now); 11 int h=now.getHour(); 12 int m=now.getMinutes(); 13 return h*60+m; 14} 15 16void loop(){ 17 //*1時間ごとにランプを光らせる*/ 18 if(elapsedTime%60==0){ 19 digitalWrite(ledPin,HIGH); 20 }else{ 21 digitalWrite(ledPin,LOW); 22 } 23 delay(100); 24}

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。