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

Ακόμα ένα ρολόι: 4 βήματα
Ακόμα ένα ρολόι: 4 βήματα

Βίντεο: Ακόμα ένα ρολόι: 4 βήματα

Βίντεο: Ακόμα ένα ρολόι: 4 βήματα
Βίντεο: Mi Band 4 | Οδηγός Εγκατάστασης & Λειτουργίας - Αντοχή Μπαταρίας (Bonus:Δοκιμή Action Camera SJ9000) 2024, Νοέμβριος
Anonim
Ακόμα ένα ρολόι
Ακόμα ένα ρολόι

Όπως φαίνεται από τις προηγούμενες μεταφορτώσεις μου, έλαβα περίπου 7 πίνακες προβολής τμημάτων από κάποιο παλιό εξοπλισμό ζύγισης.

Η προηγούμενη προσπάθειά μου χρησιμοποίησε ένα Arduino με μονάδα ρολογιού πραγματικού χρόνου.

Αυτό το Instructable χρησιμοποιεί ένα ESP8266 D1 Mini συνδεδεμένο σε διακομιστή NTP!

Ο κώδικας βασίζεται σε ένα παράδειγμα από τη βιβλιοθήκη ESP8266WiFi.

Δεν πρόκειται να μπω σε λεπτομέρειες σχετικά με την καλωδίωση οθόνης 7 Segment, καθώς υπάρχουν δεκάδες παραδείγματα στο δίκτυο. Οι 2 πλακέτες που διαθέτω, χρησιμοποιούν το τσιπ οδηγού αποκωδικοποιητή MAX7219, απαιτούν μόνο 3 ακίδες για τον έλεγχο έως και 8 x 7 Segment Displays.

Iθελα επίσης να δείξω την ημερομηνία, οπότε χρειάστηκαν άλλες 3 καρφίτσες!

Χρειαζόμουν άλλα 7 ouputs για να εμφανίσω την Ημέρα! Για να ξεπεράσω την έλλειψη ακίδων εξόδου, επέλεξα μια οθόνη Neo Pixel, 1 ακίδα, 7 εξόδους!

Βήμα 1: Το υλικό

Το Υλικό
Το Υλικό
Το Υλικό
Το Υλικό
Το Υλικό
Το Υλικό

Απαιτούνται ανταλλακτικά

Οθόνες 12 x 7 τμημάτων (στην περίπτωσή μου ήμουν πολύ τυχερός που είχα μερικές παλιές σανίδες μηχανών ζύγισης που έσωσαν μια φοβερή καλωδίωση.

1 x ESP8266 D1 Mini any οποιοδήποτε ESP8266 με 7 ή περισσότερες ψηφιακές εξόδους

2 x MAX7129 (Και πάλι, είχα την τύχη να έχω τις σανίδες οθόνης της μηχανής ζύγισης)

1 x Ευθεία οθόνη NeoPixel 8

2 x μετατοπιστές επιπέδου

Τροφοδοσία 1 x 5v

Βήμα 2: Η οθόνη DAY

Η οθόνη DAY
Η οθόνη DAY
Η οθόνη DAY
Η οθόνη DAY

Για αυτό χρησιμοποίησα μέρος μιας παλιάς πιστωτικής κάρτας για τη βάση, κάποια χοντρή κάρτα (στην περίπτωσή μου φωτογραφικό χαρτί 300gsm) και κάποια ταινία στερέωσης διπλής όψης.

Είναι μόλις 2 λωρίδες ταινίας με σχισμές κομμένες με μαχαίρι χειροτεχνίας. Η απόσταση είναι η απόσταση μεταξύ των LED στην πλακέτα NeoPixel.

Λεπτές λωρίδες της κάρτας χρησιμοποιούνται για τη δημιουργία ενός καναλιού για κάθε μέρα.

Τα ονόματα των ημερών εκτυπώνονται σε καθαρή ταινία με έναν κατασκευαστή ετικετών Dymo.

Βήμα 3: Σύνδεση και λογισμικό

Η γκάμα προϊόντων ESP8266 είναι εξαιρετική για την πρώτη φορά λόγω

α) Είναι βρώμικα φθηνά

β) Χρειάζονται πολύ λίγα εξωτερικά εξαρτήματα

Χρειαζόμουν 5v για τις οθόνες και 3v για το ESP, οπότε χρησιμοποίησα δύο επιλογείς επιπέδου με τροφοδοτικό 5v.

Το MAX7219 χρειάζεται μόνο 3 ακίδες για τον έλεγχο έως και 8 οθονών, αυτές είναι οι ακίδες 1 (Din), 12 (Load / CS) & 13 (Clock).

Αυτά συνδέονται μέσω ενός επιλογέα επιπέδου.

Ο κωδικός έχει ως εξής:

// είσοδοι: DIN pin, CLK pin, LOAD pin. αριθμός τσιπLedControl mydisplay = LedControl (3, 2, 1, 1)

LedControl datedisp = LedControl (7, 6, 5, 1);

Ο αριθμός των μαρκών έχει οριστεί σε 1, επειδή αντιμετωπίζω τις 2 οθόνες ως ξεχωριστά αντικείμενα αντί να χρησιμοποιώ το DOUT και να τα τοποθετώ σε διαδοχική σειρά.

Το NeoPixel είναι συνδεδεμένο με ψηφιακή έξοδο 4

#καθορίστε το PIN 4

#define NUMPIXELS 7 (αγνοώντας το 1 από τα 8 LED)

Υπάρχουν μερικά #συμπεριλαμβανομένων όλων των οποίων μπορείτε να βρείτε στο GitHub.

Πρέπει να εισαχθεί SSID & PASSWORD δρομολογητή και να επιλεγεί ένας διακομιστής NTP, (Έκανα Googled δωρεάν διακομιστές NTP).

Βήμα 4: Ενεργοποίηση

Με την ενεργοποίηση, οι λυχνίες LED NeoPixel κυμαίνονται και, στη συνέχεια, οι οθόνες των 7 τμημάτων εμφανίζουν εναλλακτικά "c" & "8" έως ότου πραγματοποιηθεί σύνδεση με το δρομολογητή.

Εάν όλα τα τμήματα εμφανίζουν ένα περιεχόμενο c8 σημαίνει ότι δεν έχει δημιουργηθεί σύνδεση διακομιστή NTP, αυτό θα επιλυθεί με επαναφορά.

Μόλις δημιουργηθεί μια σύνδεση, εμφανίζονται η ώρα και η ημερομηνία, η ημέρα υποδεικνύεται με ένα μπλε LED.

Συνιστάται: