Πίνακας περιεχομένων:

DS1307 Ρολόι πραγματικού χρόνου RTC με Arduino: 4 βήματα
DS1307 Ρολόι πραγματικού χρόνου RTC με Arduino: 4 βήματα

Βίντεο: DS1307 Ρολόι πραγματικού χρόνου RTC με Arduino: 4 βήματα

Βίντεο: DS1307 Ρολόι πραγματικού χρόνου RTC με Arduino: 4 βήματα
Βίντεο: 7 projects Build LED LCD Alarm Clock using DS1307 with Arduino | Lesson 105 2024, Σεπτέμβριος
Anonim
DS1307 Ρολόι πραγματικού χρόνου RTC με Arduino
DS1307 Ρολόι πραγματικού χρόνου RTC με Arduino

Σε αυτό το Σεμινάριο, θα μάθουμε για το Ρολόι πραγματικού χρόνου (RTC) και τον τρόπο με τον οποίο Arduino & Real Time Clock IC DS1307 συνδυάζονται ως συσκευή χρονισμού.

Το ρολόι πραγματικού χρόνου (RTC) χρησιμοποιείται για την παρακολούθηση του χρόνου και τη διατήρηση ενός ημερολογίου. Για να χρησιμοποιήσουμε ένα RTC, πρέπει πρώτα να το προγραμματίσουμε με την τρέχουσα ημερομηνία και ώρα. Μόλις γίνει αυτό, τα μητρώα RTC μπορούν να διαβαστούν ανά πάσα στιγμή για να γνωρίζουν την ώρα και την ημερομηνία. Το DS1307 είναι ένα RTC που λειτουργεί με πρωτόκολλο I2C. Τα δεδομένα από διάφορους καταχωρητές μπορούν να διαβαστούν με πρόσβαση στις διευθύνσεις τους για ανάγνωση χρησιμοποιώντας επικοινωνία I2C.

Βήμα 1: Πράγματα που χρειάζεστε

Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε

Αυτά είναι τα ακόλουθα πράγματα που χρειάζεστε για αυτές τις οδηγίες:

Arduino uno

Μονάδα Ds1307 rtc

Καλώδια βραχυκυκλωτήρων

Κελί νομίσματος 3,7v

Βήμα 2: Συνδέσεις

Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις

Ακολουθήστε την επισυναπτόμενη σχολική ενότητα στην ενότητα εικόνας και συνδέστε τα πάντα σύμφωνα με τους σχματικούς.

Βήμα 3: Μέρος κωδικοποίησης

Κωδικοποιητικό Μέρος
Κωδικοποιητικό Μέρος

Προγραμματισμός του Arduino για τροφοδοσία RTC με την τρέχουσα ημερομηνία και ώρα. και διαβάζοντας την ημερομηνία και την ώρα από το RTC.

Εδώ, θα χρησιμοποιήσουμε τη βιβλιοθήκη DS1307 της Watterott από το GitHub.

Κατεβάστε αυτήν τη βιβλιοθήκη από εδώ.:

Εξαγάγετε τη βιβλιοθήκη και προσθέστε το φάκελο με το όνομα DS1307 στη διαδρομή φακέλου βιβλιοθηκών του Arduino IDE.

Μόλις προστεθεί η βιβλιοθήκη στο Arduino IDE, ανοίξτε το IDE και ανοίξτε το παράδειγμα σκίτσου που ονομάζεται Παράδειγμα από τη βιβλιοθήκη DS1307 που προστέθηκε.

Προσοχή: Στο παράδειγμα σκίτσο, στο βρόχο εγκατάστασης, χρησιμοποιείται η συνάρτηση rtc.set (). Περάστε τα τρέχοντα ορίσματα ημερομηνίας και ώρας όπως αναφέρονται σε αυτήν τη συνάρτηση. Στο παράδειγμα σκίτσο, αυτή η δήλωση θα σχολιαστεί. Απο σχολιάστε το και ανεβάστε το σκίτσο. Μόλις φορτωθεί το σκίτσο, αποσυνδέστε ξανά τη δήλωση και ανεβάστε το σκίτσο. Εάν αυτό δεν γίνει, κάθε φορά που η κάρτα Arduino UNO επανέρχεται ή ενεργοποιείται μετά την απενεργοποίηση, η ημερομηνία και η ώρα που έχετε ορίσει θα ορίζονται ξανά και ξανά και δεν θα μπορείτε να διαβάσετε την ακριβή τρέχουσα ώρα και ημερομηνία.

/* DS1307 RTC (Ρολόι σε πραγματικό χρόνο) Παράδειγμα

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 Serial port* / Serial.begin (9600); ενώ (! Σειριακό)? /*περιμένετε να συνδεθεί η σειριακή θύρα - απαιτείται μόνο για τον Λεονάρντο*/

/*init RTC*/ Serial.println ("Init RTC …");

/*ορίστε μόνο την ημερομηνία+ώρα μία φορά*/ rtc.set (0, 0, 8, 24, 12, 2014). /*08: 00: 00 24.12.2014 // δευτ., Λεπτό, ώρα, ημέρα, μήνας, έτος*/

/*διακοπή/παύση RTC*/// rtc.stop ();

/*έναρξη RTC*/ rtc.start (); }

void loop () {uint8_t sec, min, ώρα, ημέρα, μήνας? uint16_t έτος?

/*λάβετε χρόνο από το RTC*/ rtc.get (& sec, & min, & ώρα, & ημέρα, & μήνας, & έτος);

/*σειριακή έξοδος*/ Serial.print ("\ nΧρόνος:"); Serial.print (ώρα, DEC) Serial.print (":"); Serial.print (min, DEC); Serial.print (":"); Serial.print (sec, DEC);

Serial.print ("\ nΗμερομηνία:"); Serial.print (ημέρα, DEC) Serial.print ("."); Serial.print (μήνας, DEC) Serial.print ("."); Serial.print (έτος, DEC)

/*περιμένετε ένα δευτερόλεπτο*/ καθυστέρηση (1000). }

Αντιγράψτε τον παραπάνω κώδικα και ανεβάστε τον στον πίνακα arduino

Βήμα 4: Βρείτε χρόνο

Λήψη χρόνου
Λήψη χρόνου
Λήψη χρόνου
Λήψη χρόνου

Αφού τα συνδέσετε όλα μαζί και φορτώσετε τον κώδικα στον πίνακα arduino, ανοίξτε τη σειριακή οθόνη στο arduino ide σας και, στη συνέχεια, θα μπορείτε να λάβετε ημερομηνία και ώρα ως δική μου στην σειριακή οθόνη σας, όπως μπορείτε να δείτε, μπορώ να δω την ώρα μου & ημερομηνία στη σειριακή οθόνη μου, για την έξοδο επίδειξης παρακαλώ ανατρέξτε στην παραπάνω έξοδο εικόνας και διασκεδάστε προσθέτοντας ρολόι RTC στο έργο σας.

Συνιστάται: