🕰️ ساعت واقعی DS3231

تاریخ و ساعت از ماژول RTC روی I2C، هر ثانیه روی سریال.

سطح: متوسط ⭐⭐ · مود: آردوینو (سه‌بعدی + کد)

قطعات لازم

کد کامل پروژه

// DS3231 real-time clock: set it once, then read the time every second.
#include <Wire.h>
#include <RTClib.h>

RTC_DS3231 rtc;
int lastSecond = -1;

void print2(int n) {            // 7 -> "07"
  if (n < 10) Serial.print("0");
  Serial.print(n);
}

void setup() {
  Serial.begin(9600);
  if (!rtc.begin()) {
    Serial.println("RTC not found!");
    while (true) delay(1000);
  }
  if (rtc.lostPower()) {        // battery was out: set the time from the computer
    rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
    Serial.println("Time was set.");
  }
}

void loop() {
  DateTime now = rtc.now();
  if (now.second() == lastSecond) return;   // print once per second
  lastSecond = now.second();

  Serial.print(now.year()); Serial.print("/");
  print2(now.month()); Serial.print("/");
  print2(now.day()); Serial.print("  ");
  print2(now.hour()); Serial.print(":");
  print2(now.minute()); Serial.print(":");
  print2(now.second());
  Serial.print("   millis: ");
  Serial.println(millis());
}

چطور اجرایش کنم؟

  1. شبیه‌ساز تینکرکد فارسی را باز کن و «مود آردوینو» را انتخاب کن.
  2. از پنل «نمونه‌ها»، «ساعت واقعی DS3231» را بارگذاری کن — مدار و کد با هم می‌آیند.
  3. دکمه‌ی اجرا ▶ را بزن و خروجی Serial و رفتار قطعات را تماشا کن.
  4. حالا کد را تغییر بده — عددها، پین‌ها، ترتیب — و دوباره اجرا کن!
این پروژه را رایگان در شبیه‌ساز اجرا کن 🤖