Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // FILE: stm_RTC_sample.ino
- // Arduino STM32 内部RTCを利用して時刻を表示する
- // 作成日 2017/03/30 by たま吉さん
- //
- #include <RTClock.h>
- #include <time.h>
- RTClock rtc(RTCSEL_LSE);
- char *wday[] = {"Sun","Mon","Tue","Wed","Thr","Fri","Sat"};
- // セットアップ
- void setup() {
- struct tm t;
- Serial.begin(115200);
- while (!Serial.isConnected()) delay(100);
- t.tm_isdst = 0; // サーマータイム [1:あり 、0:なし]
- t.tm_year = 2017-1900; // 年 [1900からの経過年数]
- t.tm_mon = 3-1; // 月 [0-11] 0から始まることに注意
- t.tm_mday = 30; // 日 [1-31]
- t.tm_wday = 4; // 曜日 [0:日 1:月 2:火 3:水 4:木 5:金 6:土]
- t.tm_hour = 15; // 時 [0-23]
- t.tm_min = 10; // 分 [0-59]
- t.tm_sec = 0; // 秒 [0-61] うるう秒考慮
- rtc.setTime(&t); // 時刻の設定
- }
- void loop() {
- time_t tt;
- struct tm* st;
- char str[64];
- tt = rtc.getTime(); // 時刻取得
- st = localtime(&tt); // 時刻型変換
- sprintf(str, "%04d/%02d/%02d [%s] %02d:%02d:%02d",
- st->tm_year+1900, // 西暦年
- st->tm_mon+1, // 月
- st->tm_mday, // 日
- wday[st->tm_wday], // 曜日
- st->tm_hour, // 時
- st->tm_min, // 分
- st->tm_sec // 秒
- );
- Serial.println(str);
- delay(1000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement