Zamówienie w dzień roboczy przed 14:00 = wysyłka tego samego dnia 30 dni na odstąpienie od umowy 1 rok gwarancji
← Wróć do przeglądu

Schemat podłączenia i przykład kodu

Tak podłączysz DS3231 Moduł zegara czasu rzeczywistego I2C (RTC wysoka precyzja) do Arduino UNO lub ESP32, z przykładowym szkicem, który możesz od razu wgrać.

Zegar czasu rzeczywistego DS3231 z Arduino Uno

Ten projekt łączy wysokoprecyzyjny moduł RTC DS3231 z Arduino Uno przez I2C. Szkic ustawia RTC na czas kompilacji, jeśli nastąpiła utrata zasilania, a następnie co sekundę odczytuje i wyświetla w Serial Monitor sformatowaną datę, godzinę oraz odczyty wbudowanego czujnika temperatury.

Schemat podłączenia: DS3231 Moduł zegara czasu rzeczywistego I2C (RTC wysoka precyzja) na Arduino UNO
Schemat podłączenia · Kliknij, aby powiększyć
Tabela połączeń: DS3231 Moduł zegara czasu rzeczywistego I2C (RTC wysoka precyzja) na Arduino UNO
Tabela połączeń · Kliknij, aby powiększyć
DS3231_Real_Time_Clock_with_Arduino_Uno.ino · skompilowane i przetestowane
/*
 * ==================================================================
 *  Generated by Codey.online  —  https://www.codey.online
 * ==================================================================
 *  Project   : DS3231 Real-Time Clock with Arduino Uno
 *  Board     : Arduino UNO (arduino:avr:uno)
 *  Parts     : DS3231 Real Time Clock Module I2C
 *  Libraries : RTClib 2.1.4
 *
 *  Codey Online is an AI-powered browser IDE for Arduino and ESP32.
 *  Describe your project and Codey writes the code, draws the wiring
 *  diagram and uploads it to your board, straight from the browser.
 *  This code is free to use, modify and share, without warranty.
 * ==================================================================
 */

#include <Wire.h>
#include <RTClib.h>

RTC_DS3231 rtc;

void setup() {
  Serial.begin(115200);
  while (!Serial);

  if (!rtc.begin()) {
    Serial.println(F("Couldn't find DS3231 RTC"));
    while (1) delay(10);
  }

  if (rtc.lostPower()) {
    Serial.println(F("RTC lost power, setting time to compile time..."));
    rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
  }

  Serial.println(F("DS3231 RTC initialized."));
}

void loop() {
  DateTime now = rtc.now();

  char dateBuffer[11];
  char timeBuffer[9];
  snprintf(dateBuffer, sizeof(dateBuffer), "%04d-%02d-%02d", now.year(), now.month(), now.day());
  snprintf(timeBuffer, sizeof(timeBuffer), "%02d:%02d:%02d", now.hour(), now.minute(), now.second());

  Serial.print(F("Date: "));
  Serial.print(dateBuffer);
  Serial.print(F(" | Time: "));
  Serial.print(timeBuffer);
  Serial.print(F(" | Temp: "));
  Serial.print(rtc.getTemperature());
  Serial.println(F(" C"));

  delay(1000);
}

Wymagane biblioteki: RTClib 2.1.4

Wiring diagram and example code generated by Codey.online — https://www.codey.online

Zegar czasu rzeczywistego ESP32 z DS3231

Ten projekt odczytuje bieżącą datę, czas i temperaturę wewnętrzną z modułu Real Time Clock DS3231 przez I2C. Podłącz moduł do szyny 3.3V ESP32 i domyślnych pinów I2C, a następnie otwórz Serial Monitor z prędkością 115200 baud, aby wyświetlić bieżący znacznik czasu.

Schemat podłączenia: DS3231 Moduł zegara czasu rzeczywistego I2C (RTC wysoka precyzja) na ESP32 DevKit V1
Schemat podłączenia · Kliknij, aby powiększyć
Tabela połączeń: DS3231 Moduł zegara czasu rzeczywistego I2C (RTC wysoka precyzja) na ESP32 DevKit V1
Tabela połączeń · Kliknij, aby powiększyć
ESP32_Real_Time_Clock_with_DS3231.ino · skompilowane i przetestowane
/*
 * ==================================================================
 *  Generated by Codey.online  —  https://www.codey.online
 * ==================================================================
 *  Project   : ESP32 Real-Time Clock with DS3231
 *  Board     : ESP32 DEVKIT V1 (esp32:esp32:esp32doit-devkit-v1)
 *  Parts     : DS3231 Real Time Clock Module I2C
 *  Libraries : RTClib 2.1.4
 *
 *  Codey Online is an AI-powered browser IDE for Arduino and ESP32.
 *  Describe your project and Codey writes the code, draws the wiring
 *  diagram and uploads it to your board, straight from the browser.
 *  This code is free to use, modify and share, without warranty.
 * ==================================================================
 */

#include <Wire.h>
#include "RTClib.h"

RTC_DS3231 rtc;

void setup() {
  Serial.begin(115200);
  while (!Serial) { delay(10); }

  Wire.begin(21, 22); // SDA = GPIO 21, SCL = GPIO 22

  if (!rtc.begin()) {
    Serial.println("Couldn't find DS3231 RTC module!");
    while (1) delay(10);
  }

  if (rtc.lostPower()) {
    Serial.println("RTC lost power, setting time to compilation time!");
    rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
  }
}

void loop() {
  DateTime now = rtc.now();

  char buffer[30];
  snprintf(buffer, sizeof(buffer), "%04d-%02d-%02d %02d:%02d:%02d",
           now.year(), now.month(), now.day(),
           now.hour(), now.minute(), now.second());

  Serial.print("Current Time: ");
  Serial.print(buffer);
  Serial.print(" | Temp: ");
  Serial.print(rtc.getTemperature());
  Serial.println(" °C");

  delay(1000);
}

Wymagane biblioteki: RTClib 2.1.4

Wiring diagram and example code generated by Codey.online — https://www.codey.online

Ostatnio oglądane

Tranzystor NPN 2N2222 A331 40V 600mA 200MHz 625mW TO-92

Tranzystor NPN 2N2222 A331 40V 600mA 200MHz 625mW TO-92

€ 0,35
8 Pins Connector/Terminal przewód, 1-stronny - male, 26AWG 20cm, XH2.54mm

8 Pins Connector/Terminal przewód, 1-stronny - male, 26AWG 20cm, XH2.54mm

€ 0,80
Sterownik silnika krokowego TB6600 dla Nema 17/23/34 | 9-42V 4A

Sterownik silnika krokowego TB6600 dla Nema 17/23/34 | 9-42V 4A

€ 11,95