// /0979/nano_TM1637_RTC/nano_TM1637_RTC.ino Update: 2024/01/24 10:44 //Board: Arduino Nano // #include #include "RTClib.h" #include "time.h" #include #define RTC_CLK 5 // RTC SCL は A5(SCL) #define RTC_DIO 4 // RTC SDA は A4(SDA) // RTC DS は 未接続 #define PIN_CLK 13 // TM1637D CLK は D13(SCK) #define PIN_DIO 12 // TM1637D DIO は D12(MISO) struct tm timeinfo; static bool cFLG=true; unsigned int ntime; TM1637Display display( PIN_CLK, PIN_DIO ); RTC_DS1307 rtc; char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}; void setup () { Serial.begin(115200); delay(50); display.setBrightness(0x0f); if (! rtc.begin()) { while (1); } // rtc.adjust(DateTime(2020, 2, 2, 2, 2, 0)); //時刻設定する時だけ uncomment } void loop () { DateTime now = rtc.now(); // getLocalTime(&timeinfo); // ntime = timeinfo.tm_hour * 100 + timeinfo.tm_min; ntime = now.hour() * 100 + now.minute(); if ( cFLG == true ) display.showNumberDecEx(ntime, 0x40, true); else if ( cFLG == false ) display.showNumberDecEx(ntime, 0x0, true); cFLG = !cFLG; Serial.print(now.year(), DEC); Serial.print('/'); Serial.print(now.month(), DEC); Serial.print('/'); Serial.print(now.day(), DEC); Serial.print(" ("); Serial.print(daysOfTheWeek[now.dayOfTheWeek()]); Serial.print(") "); Serial.print(now.hour(), DEC); Serial.print(':'); Serial.print(now.minute(), DEC); Serial.print(':'); Serial.print(now.second(), DEC); Serial.println(); delay(1000); }