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

Ρολόι Arduino Matrix: 6 βήματα
Ρολόι Arduino Matrix: 6 βήματα

Βίντεο: Ρολόι Arduino Matrix: 6 βήματα

Βίντεο: Ρολόι Arduino Matrix: 6 βήματα
Βίντεο: The beginning of my diy clock #ws2812b #arduino 2024, Ιούλιος
Anonim
Ρολόι Arduino Matrix
Ρολόι Arduino Matrix

Περιγραφή:

Δημιουργήστε το ρολόι σας χρησιμοποιώντας ένα Arduino, μια οθόνη μήτρας και μια μονάδα ρολογιού πραγματικού χρόνου (RTC). Αυτό είναι ένα διασκεδαστικό και απλό έργο που πιστεύω ότι είναι υπέροχο για αρχάριους. Το ρολόι χρησιμοποιεί τη μονάδα RTC για να παρακολουθεί με ακρίβεια την ώρα καθώς και την ημέρα, το μήνα και το έτος. Επιπλέον, η μονάδα διαθέτει ενσωματωμένο αισθητήρα θερμοκρασίας. Μπορείτε να μάθετε περισσότερα για τη μονάδα DS3231 εδώ, καθώς και το δίαυλο επικοινωνίας I2C που χρησιμοποιείται για αυτήν εδώ. Τέλος, θα χρησιμοποιήσουμε μια Dot Matrix Display για να εμφανίσουμε φυσικά την ώρα, την εβδομάδα, μήνα. Κ.λπ. Μπορείτε να μάθετε περισσότερα για την οθόνη εδώ και το πρόγραμμα οδήγησης IC MAX7219 στο φύλλο δεδομένων παρακάτω.

Μπορείτε επίσης να κατεβάσετε την έκδοση pdf για αυτό το έργο εδώ. Είναι σχεδόν το ίδιο με αυτό το διδακτικό.

[ΕΝΗΜΕΡΩΣΗ: 22/2/19] Μην χρησιμοποιείτε τον οδηγό pdf, έχω ενημερώσει αυτό το εκπαιδευτικό, αλλά αυτές οι αλλαγές δεν αντικατοπτρίζονται ακόμη στο pdf.

Βήμα 1: Συγκέντρωση εξαρτημάτων

Τα στοιχεία που θα χρειαστείτε για αυτό το έργο:

  • Max7219 Οθόνη κουκκίδων [Αγορά εδώ] [Φύλλο δεδομένων]
  • RTC DS3231 [Αγορά εδώ] [Φύλλο δεδομένων]
  • Μπαταρία 3V CR3032 (για DS3231)

Επιπλέον, θα χρειαστείτε ένα Arduino οποιουδήποτε είδους (κατά προτίμηση ένα Nano για να ελαχιστοποιήσετε το μέγεθος του έργου), ένα breadboard, καλώδια jumper καθώς και το Arduino IDE που είναι εγκατεστημένο στον υπολογιστή σας.

Βήμα 2: Βιβλιοθήκες

Βιβλιοθήκες
Βιβλιοθήκες

Κατεβάστε τις παρακάτω βιβλιοθήκες και εγκαταστήστε το αρχείο.zip στο Arduino IDE μεταβαίνοντας στο Sketch> Include Library> Add. Zip Library

ΣΗΜΕΙΩΣΗ: Η ΕΚΔΟΣΗ ΕΧΕΙ ΣΗΜΑΣΙΑ !

* Βεβαιωθείτε ότι έχετε τις σωστές εκδόσεις πριν από τη λήψη. Θα συνιστούσα τη λήψη κάθε βιβλιοθήκης στο Arduino IDE για να είστε ασφαλής.

MD_Parola 3.0.1:

MD_MAX72XX 3.0.2:

DS3231 1.0.2: https://github.com/N NorthernWidget/DS3231

Εναλλακτικά, Στο Arduino IDE μεταβείτε στο Σκίτσο> Συμπερίληψη βιβλιοθήκης> Διαχείριση βιβλιοθηκών και στη γραμμή αναζήτησης πληκτρολογήστε: "MAX72XX" και θα δείτε τα ακόλουθα (Δείτε την εικόνα):

Εγκαταστήστε μόνο MD_MAX72XX και MD_Parola. Το MD_MAXPanel ΔΕΝ χρειάζεται.

Βήμα 3: Δοκιμή των στοιχείων σας

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

Για να δοκιμάσετε τη μονάδα DS3231 RTC, συνδέστε το DS3231 στο Arduino (ανατρέξτε στην ενότητα Καλωδίωση παρακάτω). Στη συνέχεια, στο Arduino IDE, μεταβείτε στα Αρχεία> Παραδείγματα> DS3231> DS3231_Test και ανεβάστε το σκίτσο. Ανοίξτε το Serial Monitor και ελέγξτε για να δείτε ότι λαμβάνετε τη σωστή ημερομηνία, ώρα, ημέρα κ.λπ.

Για να δοκιμάσετε την οθόνη μήτρας, συνδέστε την πρώτα με το Arduino (ανατρέξτε στην ενότητα Καλωδίωση παρακάτω). Στη συνέχεια, στο Arduino IDE, μεταβείτε στα Αρχεία> Παραδείγματα> MD_Parola> Parola_HelloWorld και ανεβάστε το σκίτσο. Θα πρέπει να βλέπετε το HELLO τυπωμένο στην οθόνη και μπορεί να εκτυπωθεί αντίθετα. Εάν το κείμενο είναι αντίστροφο, πρέπει να αλλάξετε την ακόλουθη γραμμή:

#define HARDWARE_TYPE MD_MAX72XX:: PAROLA_HW

Προς το

#define HARDWARE_TYPE MD_MAX72XX:: FC16_HW

Ανεβάστε ξανά το σκίτσο και το πρόβλημα πρέπει να λυθεί.

Τώρα που δοκιμάσαμε τα εξαρτήματά μας, είμαστε έτοιμοι να συνδέσουμε τα πάντα μαζί!

Βήμα 4: Καλωδίωση

Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση

Ανατρέξτε στο διάγραμμα ή το σχηματικό σχήμα ή τον πίνακα

Βήμα 5: ΚΩΔ

Πάρτε τον κωδικό εδώ

Σημείωση: Χρησιμοποίησα έναν κώδικα αρχικά από Electronic Projects, αλλά τον τροποποίησα για να υποστηρίξει τις τρέχουσες (κατά την ολοκλήρωση) βιβλιοθήκες.

Χαρακτηριστικά ρολογιού:

Το ρολόι ρυθμίζεται αυτόματα για να δείχνει την ώρα σε μορφή 24 ωρών, αλλά μπορεί εύκολα να αλλάξει σε 12 ώρες. Το ρολόι θα εμφανίζει επίσης τη θερμοκρασία (τόσο σε Κελσίου όσο και σε Φαρενάιτ). Έχω συμπεριλάβει επίσης μια λειτουργία που ονομάζεται "Λειτουργία ύπνου", η οποία έχει οριστεί σε "OFF" (Ανατρέξτε στη Λειτουργία ύπνου παρακάτω για λεπτομέρειες).

Μορφή 12 ωρών: Για να ρυθμίσετε το ρολόι να δείχνει την ώρα σε μορφή 12 ωρών, θα πρέπει να σχολιάσετε τη γραμμή 88

ώρα = Clock.gethour (h12, PM); // Μορφή 24 ωρών

Και μηνύματα σχολιασμού 93 έως 100

αν (Clock.getHour (h12, PM)> = 13 || Clock.getHour (h12, PM) == 0)

{h = Clock.getHour (12, PM) - 12; } else {h = Clock.getHour (h12, PM); }

Κατάσταση ύπνου:

Αυτό είναι ένα χαρακτηριστικό που βοηθά στη μείωση της φωτεινότητας του ρολογιού, ιδιαίτερα τις ώρες που κοιμόμαστε. Δεν νομίζω ότι θέλετε να ξυπνήσετε στη μέση της νύχτας και τυφλωμένοι από αυτό το ρολόι. Είναι πολύ φωτεινό ακόμη και όταν είναι στη χαμηλότερη ρύθμιση. Για να ενεργοποιήσετε τη λειτουργία αδράνειας, μην αφήσετε σχόλια στις γραμμές 177 έως 184

εάν (h == 12 || h <8) // Χρονικά διαστήματα (στην περίπτωση αυτή, από τις 12 το πρωί έως τις 8 το πρωί) {P.setIntensity (0); // Ορίστε τη φωτεινότητα της οθόνης στη χαμηλότερη ρύθμιση} else {P.setIntensity (6); // Ορίστε τη φωτεινότητα της οθόνης σε 6 (15 είναι η πιο φωτεινή)}

Σημείωση: Αντιμετώπισα ένα πρόβλημα όταν χρησιμοποιώ την κατάσταση αναστολής λειτουργίας ενώ το ρολόι έχει οριστεί σε λειτουργία 12 ωρών. Θα παρατηρήσετε ότι θα εκτελείται δύο φορές την ημέρα από τις 8 το πρωί και τις 8 το απόγευμα και οι δύο ερμηνεύονται ως 8. Έτσι, εάν ορίσετε την κατάσταση αναστολής λειτουργίας να είναι ενεργή από τις 9 το βράδυ έως τις 7 το πρωί, τότε θα είναι επίσης ενεργή από τις 9 το πρωί έως τις 7 το απόγευμα. ΠΑΝΤΩΣ, αυτό το ζήτημα δεν παρουσιάζεται εάν το ρολόι έχει οριστεί σε λειτουργία 24 ωρών.

Βήμα 6: Συμπέρασμα

Συγχαρητήρια!!! Έχετε ρολόι εργασίας. Έτσι έγινε το δικό μου [Συλλογή ρολογιών]. Ελπίζω ότι όχι μόνο μάθατε λίγο περισσότερα για τα στοιχεία και την κωδικοποίηση, αλλά ότι απολαύσατε το ταξίδι φτάνοντας εκεί. Παρακαλώ μοιραστείτε μαζί μου τις σκέψεις σας για αυτόν τον οδηγό στη διεύθυνση [email protected]. Αυτός είναι στην πραγματικότητα ο πρώτος μου οδηγός έργου και ελπίζω να σας εξυπηρετήσει καλά. Ελπίζω να δημιουργήσω πολλούς ακόμη οδηγούς. Επιπλέον, εάν έχετε οποιεσδήποτε ερωτήσεις, προτάσεις ή/και βελτιώσεις στο έργο, μη διστάσετε να μου στείλετε μήνυμα.

Συνιστάται: