Inhoudsopgave:
Video: DS1307 Realtimeklok RTC met Arduino - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
In deze zelfstudie leren we over Real Time Clock (RTC) en hoe Arduino & Real Time Clock IC DS1307 in elkaar zitten als een timingapparaat.
Real Time Clock (RTC) wordt gebruikt voor het bewaken van de tijd en het bijhouden van een kalender. Om een RTC te gebruiken, moeten we deze eerst programmeren met de huidige datum en tijd. Zodra dit is gebeurd, kunnen de RTC-registers op elk moment worden uitgelezen om de tijd en datum te weten. DS1307 is een RTC die werkt op het I2C-protocol. Gegevens uit verschillende registers kunnen worden gelezen door toegang te krijgen tot hun adressen om te lezen met behulp van I2C-communicatie.
Stap 1: Dingen die je nodig hebt
Dit zijn de volgende dingen die je nodig hebt voor deze instructables:
Arduino uno
Ds1307 rtc-module
Doorverbindingsdraden
3.7v knoopcel
Stap 2: Aansluitingen
Volg de bijgevoegde schmatics in de afbeeldingssectie en sluit alles aan volgens de schmatics.
Stap 3: Codeergedeelte
Arduino programmeren om RTC te voeden met de huidige datum en tijd; en het lezen van de datum en tijd van de RTC.
Hier zullen we de DS1307-bibliotheek van Watterott van GitHub gebruiken.
Download deze bibliotheek hier.:
Pak de bibliotheek uit en voeg de map met de naam DS1307 toe aan het bibliothekenmappad van Arduino IDE.
Nadat de bibliotheek is toegevoegd aan de Arduino IDE, opent u de IDE en opent u de voorbeeldschets met de naam Voorbeeld uit de toegevoegde DS1307-bibliotheek.
Waarschuwing: in de voorbeeldschets wordt in de setup-lus de functie rtc.set() gebruikt. Geef de huidige datum- en tijdargumenten zoals vermeld aan deze functie door. In de voorbeeldschets wordt deze stelling becommentarieerd. Maak het commentaar los en upload de schets. Nadat de schets is geüpload, verwijdert u de opmerking opnieuw en uploadt u de schets. Als dit niet wordt gedaan, wordt elke keer dat het Arduino UNO-bord wordt gereset of wordt ingeschakeld nadat het is uitgeschakeld, de datum en tijd die u instelt steeds opnieuw ingesteld en kunt u de exacte huidige tijd en datum niet lezen.
/* DS1307 RTC (Real-Time-Clock) Voorbeeld
Uno A4 (SDA), A5 (SCL) Mega 20 (SDA), 21 (SCL) Leonardo 2 (SDA), 3 (SCL) */
#include "Wire.h"
#include "DS1307.h"
DS1307 rtc;
void setup() { /*init Seriële poort*/ Serial.begin (9600); while(!Serial); /*wacht tot de seriële poort verbinding maakt - alleen nodig voor Leonardo*/
/*init RTC*/ Serial.println("Init RTC…");
/*stel de datum+tijd slechts één keer in*/ rtc.set(0, 0, 8, 24, 12, 2014); /*08:00:00 24.12.2014 //sec, min, uur, dag, maand, jaar*/
/*stop/pauze RTC*/ // rtc.stop();
/*start RTC*/ rtc.start(); }
void loop() { uint8_t sec, min, uur, dag, maand; uint16_t jaar;
/*haal tijd van RTC*/ rtc.get(&sec, &min, &uur, &dag, &maand, &jaar);
/*serial output*/ Serial.print("\nTime: "); Serial.print (uur, DEC); Serial.print(":"); Serial.print (min, DEC); Serial.print(":"); Serial.print (sec, DEC);
Serial.print("\nDatum: "); Serial.print (dag, DEC); Serieel.print("."); Serial.print (maand, DEC); Serieel.print("."); Serial.print (jaar, DEC);
/*wacht even*/ vertraging (1000); }
Kopieer de bovenstaande code en upload deze naar je Arduino Board
Stap 4: Tijd krijgen
Nadat je alles met elkaar hebt verbonden en de code naar je arduino-bord hebt geüpload, open je de seriële monitor in je arduino ide en dan kun je de datum en tijd krijgen als de mijne in je seriële monitor, zoals je kunt zien, ik kan mijn tijd en datum in mijn seriële monitor, voor demo-uitvoer raadpleegt u de bovenstaande afbeeldingsuitvoer en veel plezier met het toevoegen van een RTC-klok aan uw project.
Aanbevolen:
Hoe DS1307 te gebruiken met Arduino: 7 stappen
Hoe DS1307 te gebruiken met behulp van Arduino: DS1307 is een Real Time Clock IC (RTC). Dit IC wordt gebruikt om tijdgegevens te verstrekken. De toegewezen tijd begint met seconden, minuten, uren, dagen, datum, maand en jaar. Dit IC vereist extra externe componenten zoals kristal en 3,6 V-batterijen. Kristal
ESP8266 netwerkklok zonder enige RTC - Nodemcu NTP-klok Geen RTC - INTERNET KLOKPROJECT: 4 stappen
ESP8266 netwerkklok zonder enige RTC | Nodemcu NTP-klok Geen RTC | INTERNET KLOKPROJECT: In het project zal een klokproject worden gemaakt zonder RTC, het kost tijd van internet met wifi en het zal het weergeven op het st7735-display
DS1307 en DS3231 real-time klokmodules gebruiken met Arduino: 3 stappen
DS1307 en DS3231 real-time klokmodules gebruiken met Arduino: We krijgen steeds verzoeken over het gebruik van DS1307 en DS3231 realtime klokmodules met Arduino van verschillende bronnen - dus dit is de eerste van een tweedelige tutorial over hoe ze te gebruiken. Voor deze Arduino-tutorial hebben we twee realtime klokmodules voor ons
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Lineaire klok met Arduino + DS1307 + Neopixel: sommige hardware opnieuw gebruiken: 5 stappen
Lineaire klok met Arduino + DS1307 + Neopixel: sommige hardware hergebruiken.: Van eerdere projecten had ik een Arduino UNO en een Neopixel LED-strip over en wilde iets anders maken. Omdat Neopixel strip 60 LED lampjes heeft, dacht men deze als grote klok te gebruiken. Om de Uren aan te geven wordt een rood 5 LED segment gebruikt (60 LED