Ρολόι σε μικροελεγκτή AVR με DS1307. Ηλεκτρονικό ρολόι LED

Γεια σας geektimes! Στο πρώτο μέρος του άρθρου εξετάστηκαν οι αρχές της απόκτησης της ακριβούς ώρας σε ένα σπιτικό ρολόι. Ας προχωρήσουμε περαιτέρω και ας εξετάσουμε πώς και σε τι είναι καλύτερο να εμφανιστεί αυτή τη φορά.

1. Συσκευές εξόδου

Έτσι, έχουμε μια συγκεκριμένη πλατφόρμα (Arduino, Raspberry, ελεγκτής PIC / AVR / STM, κ.λπ.) και το καθήκον είναι να συνδέσουμε κάποια ένδειξη σε αυτήν. Υπάρχουν πολλές επιλογές που θα εξετάσουμε.

Εμφάνιση τμήματος

Όλα είναι απλά εδώ. Η ένδειξη τμήματος αποτελείται από συνηθισμένες λυχνίες LED, οι οποίες συνδέονται κοινά με τον μικροελεγκτή μέσω αντιστάσεων απόσβεσης.

Προσοχή στην κίνηση!

Πλεονεκτήματα: απλότητα σχεδιασμού, καλές γωνίες θέασης, χαμηλή τιμή.
Μείον: ο όγκος των πληροφοριών που εμφανίζονται είναι περιορισμένος.
Υπάρχουν δύο τύποι σχεδίων δεικτών, με κοινή κάθοδο και κοινή άνοδο, στο εσωτερικό μοιάζει κάπως έτσι (διάγραμμα από τον ιστότοπο του κατασκευαστή).

Υπάρχουν 1001 άρθρα σχετικά με το πώς να συνδέσετε ένα LED σε έναν μικροελεγκτή, google για βοήθεια. Οι δυσκολίες ξεκινούν όταν θέλουμε να το κάνουμε μεγάλο ρολόι- δεν είναι πολύ βολικό να κοιτάξετε έναν μικρό δείκτη. Τότε χρειαζόμαστε δείκτες όπως αυτός (φωτογραφία από eBay):

Τροφοδοτούνται από 12 V και απλά δεν θα λειτουργούν απευθείας από τον μικροελεγκτή. Εδώ το μικροκύκλωμα έρχεται στη διάσωση CD4511, μόνο για αυτόν τον σκοπό. Όχι μόνο μετατρέπει τα δεδομένα από τη γραμμή 4 bit στα επιθυμητά ψηφία, αλλά περιέχει επίσης έναν ενσωματωμένο διακόπτη τρανζίστορ για την παροχή τάσης στον δείκτη. Έτσι, στο κύκλωμα θα χρειαστεί να έχουμε μια τάση «τροφοδοσίας» 9-12 V, και έναν ξεχωριστό μετατροπέα υποβάθμισης (για παράδειγμα, L7805) για να τροφοδοτεί τη «λογική» του κυκλώματος.

Δείκτες μήτρας

Στην πραγματικότητα, πρόκειται για τα ίδια LED, μόνο με τη μορφή μήτρας 8x8. Φωτογραφίες από το eBay:

Πωλούνται στο eBay ως μεμονωμένες μονάδες ή έτοιμα μπλοκ, για παράδειγμα, 4 τεμάχια. Ο έλεγχός τους είναι πολύ απλός - ένα μικροκύκλωμα είναι ήδη κολλημένο στις μονάδες MAX7219, εξασφαλίζοντας τη λειτουργία τους και τη σύνδεσή τους με τον μικροελεγκτή με μόλις 5 καλώδια. Υπάρχουν πολλές βιβλιοθήκες για το Arduino, οι ενδιαφερόμενοι μπορούν να δουν τον κώδικα.
Πλεονεκτήματα: χαμηλή τιμή, καλές γωνίες θέασης και φωτεινότητα.
Μείον: χαμηλή ανάλυση. Αλλά για το έργο της εξόδου ο χρόνος είναι αρκετά αρκετός.

Ενδείξεις LCD

Οι ενδείξεις LCD είναι γραφικές και κειμενικές.

Τα γραφικά είναι πιο ακριβά, αλλά σας επιτρέπουν να εμφανίζετε πιο ποικίλες πληροφορίες (για παράδειγμα, ένα γράφημα της ατμοσφαιρικής πίεσης). Τα μηνύματα κειμένου είναι φθηνότερα και ευκολότερα στην εργασία, σας επιτρέπουν επίσης να εμφανίζετε ψευδογραφικά - μπορείτε να φορτώσετε προσαρμοσμένα σύμβολα στην οθόνη.

Δεν είναι δύσκολο να εργαστείτε με την ένδειξη LCD από τον κωδικό, αλλά υπάρχει ένα συγκεκριμένο μειονέκτημα - ο δείκτης απαιτεί πολλές γραμμές ελέγχου (από 7 έως 12) από τον μικροελεγκτή, κάτι που είναι άβολο. Ως εκ τούτου, οι Κινέζοι σκέφτηκαν να συνδυάσουν την ένδειξη LCD με τον ελεγκτή i2c, τελικά αποδείχθηκε ότι είναι πολύ βολικό - μόνο 4 καλώδια αρκούν για σύνδεση (φωτογραφία από eBay).


Οι ενδείξεις LCD είναι αρκετά φθηνές (αν λαμβάνονται στο eBay), μεγάλες, εύκολες στη σύνδεση και μπορείτε να εμφανίσετε μια ποικιλία πληροφοριών. Το μόνο μειονέκτημα δεν είναι πολύ μεγάλες γωνίες θέασης.

Ενδείξεις OLED

Αποτελούν βελτιωμένη συνέχεια της προηγούμενης έκδοσης. Κυμαίνονται από μικρά και φθηνά 1,1" έως μεγάλα και ακριβά. Φωτογραφία από το eBay.

Στην πραγματικότητα, είναι καλά για όλους εκτός από την τιμή. Όσον αφορά τους μικρούς δείκτες, μεγέθους 0,9-1,1 ", είναι δύσκολο να βρεθεί κάποια πρακτική εφαρμογή για αυτούς (εκτός από τη μελέτη εργασίας με το i2c).

Ενδείξεις εκκένωσης αερίου (IN-14, IN-18)

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


(φωτογραφία από το site nocrotec.com)

Το διάγραμμα καλωδίωσης τους είναι κάπως πιο περίπλοκο, αφού Αυτοί οι δείκτες χρησιμοποιούν 170V για ανάφλεξη. Μετατροπέας από 12V => 180V μπορεί να γίνει σε μικροκύκλωμα MAX771... Για την παροχή τάσης στους δείκτες, χρησιμοποιείται ένα σοβιετικό μικροκύκλωμα K155ID1, το οποίο δημιουργήθηκε ειδικά για αυτό. Η τιμή του τεύχους για αυτοπαραγωγή: περίπου 500 ρούβλια για κάθε δείκτη και 100 ρούβλια για το K155ID1, όλες οι άλλες λεπτομέρειες, όπως έγραψαν σε παλιά περιοδικά, "δεν είναι σε έλλειψη". Η κύρια δυσκολία εδώ είναι ότι τόσο το IN-xx όσο και το K155ID1 είναι εδώ και καιρό εκτός παραγωγής και μπορείτε να τα αγοράσετε μόνο σε αγορές ραδιοφώνου ή σε μερικά εξειδικευμένα καταστήματα.

2. Επιλογή πλατφόρμας

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

Arduino

Η πιο εύκολη επιλογή για αρχάριους. Η έτοιμη πλακέτα είναι φθηνή (περίπου 10 $ στο eBay με δωρεάν αποστολή), έχει όλες τις απαραίτητες υποδοχές για προγραμματισμό. Φωτογραφίες από το eBay:

Υπάρχει ένας τεράστιος αριθμός διαφορετικών βιβλιοθηκών για το Arduino (για παράδειγμα, για τις ίδιες οθόνες LCD, μονάδες σε πραγματικό χρόνο), το Arduino είναι συμβατό με διάφορες πρόσθετες μονάδες.
Το κύριο μειονέκτημα: η πολυπλοκότητα του εντοπισμού σφαλμάτων (μόνο μέσω της κονσόλας σειριακής θύρας) και ένας αρκετά αδύναμος επεξεργαστής για τα σύγχρονα πρότυπα (2KB RAM και 16MHz).
Το κύριο πλεονέκτημα: μπορείτε να κάνετε πολλά πράγματα, πρακτικά χωρίς να ταλαιπωρηθείτε με τη συγκόλληση, την αγορά ενός προγραμματιστή και πλακέτες καλωδίωσης, οι μονάδες πρέπει απλώς να συνδέονται μεταξύ τους.

Επεξεργαστές STM 32 bit

Για όσους θέλουν κάτι πιο δυνατό, υπάρχουν έτοιμες πλακέτες με επεξεργαστές STM, για παράδειγμα μια πλακέτα με STM32F103RBT6 και οθόνη TFT. Φωτογραφίες από το eBay:

Εδώ έχουμε ήδη πλήρη εντοπισμό σφαλμάτων σε ένα πλήρες IDE (από όλα τα διαφορετικά μου άρεσε περισσότερο το Coocox IDE), ωστόσο, χρειαζόμαστε έναν ξεχωριστό προγραμματιστή εντοπισμού σφαλμάτων ST-LINK με υποδοχή JTAG (η τιμή έκδοσης είναι 20 $- 40 στο eBay). Εναλλακτικά, μπορείτε να αγοράσετε μια πλακέτα εντοπισμού σφαλμάτων STM32F4Discovery, η οποία έχει ήδη ενσωματωμένο αυτόν τον προγραμματιστή και μπορεί να χρησιμοποιηθεί ξεχωριστά.

Raspberry PI

Και τέλος, για όσους θέλουν πλήρη ενσωμάτωση με τον σύγχρονο κόσμο, υπάρχουν υπολογιστές μονής πλακέτας με Linux, όλοι πιθανότατα γνωρίζουν ήδη το Raspberry PI. Φωτογραφίες από το eBay:

το πλήρης υπολογιστήςμε Linux, gigabyte μνήμης RAM και επεξεργαστή 4 πυρήνων. Στην άκρη της πλακέτας, υπάρχει ένας πίνακας 40 ακίδων, που σας επιτρέπει να συνδέσετε διάφορα περιφερειακά (οι καρφίτσες είναι διαθέσιμες από τον κώδικα, για παράδειγμα, στην Python, για να μην αναφέρουμε το C / C ++), υπάρχει επίσης ένα τυπικό USB με τη μορφή 4 υποδοχών (μπορείτε να συνδέσετε WiFi). Υπάρχει επίσης τυπικό HDMI.
Η ισχύς της πλακέτας θα είναι αρκετή, για παράδειγμα, όχι μόνο για την εμφάνιση της ώρας, αλλά και για τη διατήρηση ενός διακομιστή HTTP για τη ρύθμιση παραμέτρων μέσω της διεπαφής ιστού, τη φόρτωση της πρόγνωσης καιρού μέσω του Διαδικτύου κ.λπ. Γενικά, υπάρχει πολύς χώρος για πέταγμα της φαντασίας.

Το μόνο πρόβλημα με το Raspberry (και τους επεξεργαστές STM32) είναι ότι οι ακίδες του χρησιμοποιούν λογική 3V και τα περισσότερα εξωτερικές συσκευές(π.χ. οθόνες LCD) λειτουργούν «με τον παλιό τρόπο» από 5V. Μπορείτε, φυσικά, να συνδεθείτε και έτσι, καταρχήν, θα λειτουργήσει, αλλά αυτή δεν είναι η σωστή μέθοδος και είναι κρίμα να χαλάσετε την πληρωμή των 50 $. Ο σωστός τρόπος είναι να χρησιμοποιήσετε έναν "λογικό μετατροπέα επιπέδου", ο οποίος κοστίζει μόνο 1-2 $ στο eBay.
Φωτογραφίες από το eBay:

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

ESP8266

Η μέθοδος είναι μάλλον εξωτική, αλλά μάλλον πολλά υποσχόμενη λόγω της συμπαγούς και χαμηλού κόστους της λύσης. Για πολύ λίγα χρήματα (περίπου 4-5 $ στο eBay), μπορείτε να αγοράσετε μια μονάδα ESP8266 που περιέχει επεξεργαστή και WiFi επί του σκάφους.
Φωτογραφίες από το eBay:

Αρχικά, τέτοιες μονάδες προορίζονταν ως γέφυρα WiFi για ανταλλαγή μέσω σειριακής θύρας, αλλά πολλοί λάτρεις έχουν γράψει εναλλακτικό υλικολογισμικό, επιτρέποντας την εργασία με αισθητήρες, συσκευές i2c, PWM κ.λπ. Υποθετικά, είναι πολύ πιθανό να λάβετε χρόνο από έναν διακομιστή NTP και να τον εμφανίσετε μέσω i2c στην οθόνη. Για όσους θέλουν να συνδέσουν πολλά διαφορετικά περιφερειακά, υπάρχουν ειδικές πλακέτες NodeMCU με ένας μεγάλος αριθμόςσυμπεράσματα, η τιμή έκδοσης είναι περίπου 500 ρούβλια (φυσικά στο eBay):

Το μόνο αρνητικό είναι ότι το ESP8266 έχει πολύ λίγα Μνήμη RAM(ανάλογα με το υλικολογισμικό, από 1 έως 32 KB), αλλά αυτό κάνει την εργασία ακόμα πιο ενδιαφέρουσα. Οι μονάδες ESP8266 χρησιμοποιούν λογική 3 volt, επομένως ο παραπάνω μετατροπέας στάθμης είναι χρήσιμος και εδώ.

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

Αντί για συμπέρασμα

Στο τέλος, άρχισα να χρησιμοποιώ ένα Raspberry PI με μια ένδειξη κειμένου ρυθμισμένη να λειτουργεί με ψευδο-γραφικά (που αποδείχθηκε φθηνότερη από μια γραφική οθόνη της ίδιας διαγώνιας). Τράβηξε μια φωτογραφία της οθόνης επιτραπέζιο ρολόιτη στιγμή της συγγραφής αυτής.

Το ρολόι εμφανίζει την ακριβή ώρα που λήφθηκε από το Διαδίκτυο και τον καιρό που ενημερώνεται από το Yandex, όλα αυτά είναι γραμμένα σε Python και λειτουργεί εδώ και αρκετούς μήνες. Παράλληλα, εκκινείται ένας διακομιστής FTP στο ρολόι, ο οποίος επιτρέπει (μαζί με την προώθηση θύρας στο δρομολογητή) να ενημερώνει το υλικολογισμικό σε αυτά όχι μόνο από το σπίτι, αλλά και από οπουδήποτε υπάρχει Διαδίκτυο. Ως μπόνους, οι πόροι του Raspberry είναι, καταρχήν, αρκετοί για τη σύνδεση κάμερας ή/και μικροφώνου με δυνατότητα απομακρυσμένης παρακολούθησης ενός διαμερίσματος ή ελέγχου διαφόρων μονάδων / ρελέ / αισθητήρων. Μπορείτε να προσθέσετε κάθε λογής «καλούδια», όπως π.χ Ένδειξη LEDσχετικά με την εισερχόμενη αλληλογραφία και ούτω καθεξής.

ΥΓ: Γιατί eBay;
Όπως βλέπετε δόθηκαν τιμές ή φωτογραφίες από το ebay για όλες τις συσκευές. Γιατί αυτό? Δυστυχώς, τα καταστήματά μας συχνά ζουν σύμφωνα με την αρχή "αγόρασα για 1 $, πούλησα για 3 και ζω με αυτό το 2 τοις εκατό." Οπως και απλό παράδειγμαΤο Arduino Uno R3 κοστίζει (τη στιγμή που γράφονται αυτές οι γραμμές) 3600r στην Αγία Πετρούπολη και 350r στο eBay με δωρεάν αποστολή από την Κίνα. Η διαφορά είναι πραγματικά μια τάξη μεγέθους, χωρίς καμία λογοτεχνική υπερβολή. Ναι, θα πρέπει να περιμένετε ένα μήνα για να παραλάβετε το δέμα από το ταχυδρομείο, αλλά νομίζω ότι μια τέτοια διαφορά στην τιμή αξίζει τον κόπο. Ωστόσο, αν κάποιος το χρειάζεται αυτή τη στιγμή και επειγόντως, τότε μάλλον υπάρχει επιλογή στα τοπικά καταστήματα, εδώ ο καθένας αποφασίζει μόνος του.

Για όσους είναι τουλάχιστον λίγο έμπειροι στους μικροελεγκτές και θέλουν επίσης να δημιουργήσουν ένα απλό και χρήσιμη συσκευήγια το σπίτι, δεν υπάρχει τίποτα καλύτερο από ένα συγκρότημα με ενδείξεις LED. Κάτι τέτοιο μπορεί να διακοσμήσει το δωμάτιό σας, ή μπορεί να πάει για ένα μοναδικό χειροποίητο δώρο, από το οποίο θα αποκτήσει επιπλέον αξία. Το κύκλωμα λειτουργεί σαν ρολόι και σαν θερμόμετρο - οι λειτουργίες αλλάζουν με ένα κουμπί ή αυτόματα.

Ηλεκτρικό διάγραμμα ενός σπιτικού ρολογιού με ένα θερμόμετρο

Μικροελεγκτής PIC18F25K22φροντίζει για όλη την επεξεργασία δεδομένων και το χρονοδιάγραμμα, και για ένα κλάσμα ULN2803Aο συντονισμός των εξόδων του με την ένδειξη LED παραμένει. Μικρό μικροκύκλωμα DS1302λειτουργεί ως χρονόμετρο για ακριβή δεύτερα σήματα, η συχνότητά του σταθεροποιείται από ένα τυπικό αντηχείο χαλαζία 32768 Hz. Αυτό περιπλέκει κάπως τον σχεδιασμό, αλλά δεν χρειάζεται να προσαρμόζετε και να διορθώνετε συνεχώς τον χρόνο, ο οποίος αναπόφευκτα θα καθυστερήσει ή θα βιαστεί εάν τα καταφέρετε με έναν τυχαίο μη συντονισμένο συντονιστή χαλαζία για πολλά MHz. Ένα τέτοιο ρολόι είναι μάλλον ένα απλό παιχνίδι παρά ένας ακριβής χρονομέτρης υψηλής ποιότητας.

Εάν είναι απαραίτητο, οι αισθητήρες θερμοκρασίας μπορούν να βρίσκονται μακριά από την κύρια μονάδα - συνδέονται με αυτό με ένα καλώδιο τριών συρμάτων. Στην περίπτωσή μας, ο ένας αισθητήρας θερμοκρασίας είναι τοποθετημένος στο μπλοκ και ο άλλος βρίσκεται έξω, σε ένα καλώδιο μήκους περίπου 50 εκ. Όταν δοκιμάσαμε ένα καλώδιο 5 m, λειτουργούσε επίσης τέλεια.

Η οθόνη του ρολογιού αποτελείται από τέσσερις μεγάλες ψηφιακές ενδείξεις LED. Αρχικά ήταν κοινή κάθοδος, αλλά άλλαξαν σε κοινή άνοδο στην τελική έκδοση. Μπορείτε να βάλετε οποιεσδήποτε άλλες και, στη συνέχεια, απλώς επιλέξτε τις αντιστάσεις περιορισμού ρεύματος R1-R7 με βάση την απαιτούμενη φωτεινότητα. Θα μπορούσε να είχε τοποθετηθεί σε μια κοινή πλακέτα με το ηλεκτρονικό μέρος του ρολογιού, αλλά αυτό είναι πολύ πιο ευέλικτο - ξαφνικά θέλετε να βάλετε μια πολύ μεγάλη ένδειξη LED για να φαίνονται σε μεγάλη απόσταση. Ένα παράδειγμα τέτοιου σχεδιασμού ρολογιού δρόμου είναι εδώ.

Τα ίδια τα ηλεκτρονικά ξεκινούν από τα 5 V, αλλά για μια φωτεινή λάμψη των LED, πρέπει να χρησιμοποιήσετε 12 V. Από το δίκτυο, η τροφοδοσία τροφοδοτείται μέσω ενός προσαρμογέα μετασχηματιστή προς τα κάτω στον σταθεροποιητή 7805 , που παράγει τάση αυστηρά 5 V. Προσοχή στη μικρή πράσινη κυλινδρική μπαταρία - χρησιμεύει ως πηγή εφεδρική ισχύς, σε περίπτωση διακοπής ρεύματος 220 V. Δεν είναι απαραίτητο να το πάρετε για 5 V - αρκεί μια μπαταρία ιόντων λιθίου 3,6 volt ή Ni-MH.

Για την περίπτωση, μπορείτε να χρησιμοποιήσετε διάφορα υλικά - ξύλο, πλαστικό, μέταλλο ή κατασκευή σε ολόκληρη τη δομή σπιτικά ρολόγιασε ένα έτοιμο βιομηχανικό, για παράδειγμα από πολύμετρο, δέκτη, ραδιόφωνο κ.λπ. Κατασκευάσαμε από πλεξιγκλάς, επειδή είναι εύκολο στην επεξεργασία, σας επιτρέπει να βλέπετε το εσωτερικό έτσι ώστε να μπορούν να δουν όλοι - αυτό το ρολόι συναρμολογείται από τα χέρια μας. Και, το πιο σημαντικό, ήταν σε απόθεμα :)

Εδώ μπορείτε να βρείτε όλες τις απαραίτητες λεπτομέρειες του προτεινόμενου σχεδιασμού του σπιτικού ψηφιακό ρολόϊ, συμπεριλαμβανομένης της σχηματικής, τοπολογίας πλακέτα τυπωμένου κυκλώματος, υλικολογισμικό PIC και

LED απλό ρολόιμπορεί να γίνει σε ένα φτηνό ελεγκτή PIC16F628A. Φυσικά, τα καταστήματα είναι γεμάτα με διάφορα ηλεκτρονικά ρολόγια, αλλά ανάλογα με τις λειτουργίες τους, μπορεί είτε να τους λείπει θερμόμετρο, είτε ξυπνητήρι, είτε να μην λάμπουν στο σκοτάδι. Και γενικά, μερικές φορές ο πρωτόκολλος θέλει να κολλήσει κάτι μόνος του και όχι να αγοράσει έτοιμο. Για να μεγεθύνετε το διάγραμμα του διαγράμματος - κάντε κλικ.

Τα ρολόγια που προσφέρονται έχουν ημερολόγιο. Έχει δύο επιλογές για την εμφάνιση της ημερομηνίας - μήνα σε ψηφία ή συλλαβή, όλα αυτά διαμορφώνονται μετά την εισαγωγή της ημερομηνίας αλλάζοντας περαιτέρω με το κουμπί S1ενώ εμφανίζεται η επιθυμητή παράμετρος, το θερμόμετρο. υπάρχουν υλικολογισμικά για διαφορετικούς αισθητήρες. Δείτε τη συσκευή μέσα στη θήκη:


Όλοι γνωρίζουν ότι οι συντονιστές χαλαζία δεν είναι τέλειοι όσον αφορά την ακρίβεια, και μέσα σε λίγες εβδομάδες, συσσωρεύεται ένα σφάλμα. Για την καταπολέμηση αυτής της περίπτωσης, το ρολόι προβλέπει μια διόρθωση διαδρομής, η οποία ορίζεται από τις παραμέτρους SHκαι SL... Περισσότερες λεπτομέρειες:

SH = 42 και SL = 40 - αυτό είναι προς τα εμπρός 5 λεπτά την ημέρα.
SH = 46 και SL = 40 - αυτό είναι 3 λεπτά την ημέρα πίσω.
SH = 40 και SL = 40 - αυτό προωθείται κατά 2 λεπτά την ημέρα.
SH = 45 και SL = 40 - αυτό είναι πίσω 1 λεπτό την ημέρα.
SH = 44 και SL = С0 - αυτό προωθείται κατά 1 λεπτό την ημέρα.
SH = 45 και SL = 00 - αυτή η διόρθωση είναι απενεργοποιημένη.

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

θερμοκρασία 29 βαθμοί Κελσίου

Ως δείκτες, μπορείτε να βάλετε είτε ψηφιακά συγκροτήματα LED, τα οποία υποδεικνύονται στο ίδιο το διάγραμμα, είτε να τα αντικαταστήσετε με συνηθισμένα στρογγυλά σούπερ φωτεινά LED - τότε αυτό το ρολόι θα είναι ορατό από μακριά και θα μπορεί να κρεμαστεί ακόμα και στο δρόμο.

Στη φωτογραφία υπάρχει ένα πρωτότυπο που συναρμολόγησα για να διορθώσω το πρόγραμμα που θα διαχειριστεί όλη αυτή την οικονομία. Το δεύτερο arduino nano στην επάνω δεξιά γωνία του breadboard δεν ανήκει στο έργο και κολλάει εκεί ακριβώς έτσι, μπορείτε να το αγνοήσετε.

Λίγο για την αρχή λειτουργίας: Το Arduino παίρνει δεδομένα από το χρονόμετρο DS323, τα επεξεργάζεται, καθορίζει το επίπεδο φωτισμού χρησιμοποιώντας μια φωτοαντίσταση, στη συνέχεια στέλνει τα πάντα στο MAX7219 και, με τη σειρά του, φωτίζει τα απαραίτητα τμήματα με την επιθυμητή φωτεινότητα. Επίσης, χρησιμοποιώντας τρία κουμπιά, μπορείτε να ρυθμίσετε το έτος, τον μήνα, την ημέρα και την ώρα κατά βούληση. Στη φωτογραφία, οι ενδείξεις εμφανίζουν την ώρα και τη θερμοκρασία, η οποία λαμβάνεται από έναν ψηφιακό αισθητήρα θερμοκρασίας.

Η κύρια δυσκολία στην περίπτωσή μου είναι ότι οι δείκτες 2,7 ιντσών με κοινή άνοδο, και έπρεπε πρώτα να γίνουν φίλοι με το max7219, το οποίο είναι ακονισμένο για δείκτες με κοινή κάθοδο, και δεύτερον, να λύσουν το πρόβλημα με την τροφοδοσία τους , μιας και χρειάζονται 7,2 βολτ για λάμψη, που μόνο το max7219 δεν μπορεί να δώσει. Αφού ζήτησα βοήθεια σε ένα φόρουμ, πήρα την ίδια απάντηση.

Λύση στιγμιότυπου οθόνης:


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

Για τη δοκιμή, σύνδεσα έναν δείκτη, όλα λειτουργούν, τίποτα δεν καπνίζει

Αρχίζουμε να μαζεύουμε.

Αποφάσισα να χωρίσω το κύκλωμα σε 2 μέρη λόγω του τεράστιου αριθμού άλτων στην έκδοση που χώρισαν από τα στραβά πόδια μου, όπου όλα ήταν σε μια σανίδα. Το ρολόι θα αποτελείται από μια μονάδα οθόνης και μια μονάδα ισχύος και ελέγχου. Αποφασίστηκε να συναρμολογηθεί πρώτα το τελευταίο. Αισθητές και έμπειροι ραδιοερασιτέχνες, παρακαλούμε να μην λιποθυμήσετε λόγω κατάχρησης ανταλλακτικών. Δεν υπάρχει καμία επιθυμία να αγοράσω έναν εκτυπωτή για χάρη του LUT, οπότε το κάνω με τον παλιό τρόπο - εκπαιδεύομαι σε ένα κομμάτι χαρτί, ανοίγω τρύπες σύμφωνα με ένα πρότυπο, σχεδιάζω μια διαδρομή με μαρκαδόρο και μετά δολώνω.

Η αρχή της στερέωσης των δεικτών είναι η ίδια με αυτήν.

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

Η διαδικασία σήμανσης







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

Σχεδιάζουμε μονοπάτια και δηλητηριάζουμε.




κολύμβηση σε χλωριούχο σίδηρο

Ετοιμος!
πίνακας ελέγχου:


πίνακας ενδείξεων:


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

Εδώ είναι οι έτοιμοι πίνακες. Η πλακέτα ελέγχου διαθέτει θέση για ένα arduino nano, ένα ρολόι, καθώς και εξόδους για σύνδεση σε μια πλακέτα οθόνης και αισθητήρες (φωτοαντίσταση για αυτόματη φωτεινότητα και ψηφιακό θερμόμετρο ds18s20) και μια μονάδα τροφοδοσίας με ρυθμιζόμενη τάση εξόδου (για μεγάλα επτά -συσκευές τμήματος) και για την τροφοδοσία του ρολογιού και του arduino, η πλακέτα οθόνης περιέχει υποδοχές για οθόνες, υποδοχές για max2719 και uln2003a, μια λύση για την τροφοδοσία τεσσάρων μεγάλων συσκευών επτά τμημάτων και ένα σωρό βραχυκυκλωτήρες.




πίσω πλακέτα ελέγχου

Πίσω πίνακας ενδείξεων:

Τραγική εγκατάσταση smd:


Τρέξιμο

Αφού κολλήσετε όλα τα καλώδια, τα κουμπιά και τους αισθητήρες, ήρθε η ώρα να το ενεργοποιήσετε. Η πρώτη εκτόξευση αποκάλυψε αρκετά προβλήματα. Η τελευταία μεγάλη ένδειξη ήταν σβηστή και οι υπόλοιπες ήταν αμυδρά. Αντιμετώπισα το πρώτο πρόβλημα συγκολλώντας το πόδι του τρανζίστορ SMD, με το δεύτερο - ρυθμίζοντας την τάση που εκπέμπει το lm317.
ΕΙΝΑΙ ΖΩΝΤΑΝΟ!

Αυτά τα ρολόγια συλλέγονται σε ένα γνωστό σύνολο μικροκυκλωμάτων - K176IE18 (δυαδικός μετρητής για ώρες με γεννήτρια σημάτων δακτυλίου),

K176IE13 (μετρητής για ώρες με συναγερμό) και K176ID2 (δυαδικός σε μετατροπέας επτά τμημάτων)

Όταν είναι ενεργοποιημένη η τροφοδοσία, τα μηδενικά εγγράφονται αυτόματα στον μετρητή ωρών, λεπτών και στον καταχωρητή μνήμης συναγερμού του μικροκυκλώματος U2. Για εγκατάσταση

ώρα, πατήστε το κουμπί S4 (Ρύθμιση ώρας) και ενώ το κρατάτε πατημένο, πατήστε το κουμπί S3 (Ώρα) - για να ρυθμίσετε την ώρα ή S2 (Ελπ.) - για να ρυθμίσετε

λεπτά. Σε αυτή την περίπτωση, οι ενδείξεις των αντίστοιχων δεικτών θα αρχίσουν να αλλάζουν με συχνότητα 2 Hz από 00 σε 59 και μετά ξανά 00. Τη στιγμή της μετάβασης

από τις 59 έως τις 00, ο μετρητής ωρών θα αυξηθεί κατά μία. Η ρύθμιση της ώρας αφύπνισης είναι η ίδια, μόνο που πρέπει να την κρατήσετε

το κουμπί S5 (Σετ συναγερμού). Αφού ρυθμίσετε την ώρα αφύπνισης, πρέπει να πατήσετε το κουμπί S1 για να ενεργοποιήσετε το ξυπνητήρι (επαφές

κλειστό). Το κουμπί S6 (Επαναφορά) χρησιμοποιείται για την αναγκαστική επαναφορά των ενδείξεων λεπτών στο 00 κατά τη ρύθμιση. Οι λυχνίες LED D3 και D4 παίζουν ρόλο

διαιρώντας κουκκίδες που αναβοσβήνουν σε συχνότητα 1 Hz. Οι ψηφιακές ενδείξεις στο διάγραμμα είναι στη σωστή σειρά, δηλ. ΠΗΓΑΙΝΕ ΠΡΩΤΟΣ

ενδείξεις ώρας, δύο σημεία διαίρεσης (LED D3 και D4) και ενδείξεις λεπτών.

Το ρολόι χρησιμοποιούσε αντιστάσεις R6-R12 και R14-R16 με ισχύ 0,25 W, οι υπόλοιπες - 0,125 W. Αντηχείο χαλαζία XTAL1 σε συχνότητα 32 768 Hz -

συνηθισμένο ρολόι, Τα τρανζίστορ KT315A μπορούν να αντικατασταθούν με οποιοδήποτε πυρίτιο χαμηλής ισχύος της αντίστοιχης δομής, KT815A - με τρανζίστορ

μέση ισχύς με στατικό συντελεστή μεταφοράς ρεύματος της βάσης τουλάχιστον 40, δίοδοι - οποιοδήποτε πυρίτιο χαμηλής ισχύος. Squeaker BZ1

δυναμική, χωρίς ενσωματωμένη γεννήτρια, αντίσταση περιέλιξης 45 Om. Το κουμπί S1 ασφαλίζει φυσικά.

Οι δείκτες που χρησιμοποιούνται είναι πράσινοι TOS-5163AG, μπορείτε να χρησιμοποιήσετε οποιουσδήποτε άλλους δείκτες με κοινή κάθοδο, χωρίς μείωση

αντίσταση των αντιστάσεων R6-R12. Στο σχήμα, μπορείτε να δείτε το pinout αυτού του δείκτη, τα συμπεράσματα εμφανίζονται υπό όρους, αφού παρουσιάζονται

θέα από ψηλά.

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

με ένα συχνόμετρο, η περίοδος ταλάντωσης είναι 1 s στον ακροδέκτη 4 του μικροκυκλώματος U1. Ο συντονισμός της γεννήτριας κατά τη διάρκεια του ρολογιού θα απαιτήσει σημαντικά μεγαλύτερο κόστος.

χρόνος. Μπορεί επίσης να χρειαστεί να ρυθμίσετε τη φωτεινότητα των LED D3 και D4 επιλέγοντας την αντίσταση της αντίστασης R5 έτσι ώστε τα πάντα

έλαμπε ομοιόμορφα. Το ρεύμα που καταναλώνει το ρολόι δεν ξεπερνά τα 180 mA.

Το ρολόι τροφοδοτείται από ένα συμβατικό τροφοδοτικό, συναρμολογημένο σε σταθεροποιητή θετικού μικροκυκλώματος 7809 με τάση εξόδου + 9V και ρεύμα 1,5Α.

Συνεχίζοντας το θέμα:
Ενας υπολογιστής

Πώς μπορώ να ενημερώσω το λογισμικό; Σας παρέχουμε διαφορετικούς τρόπους ενημέρωσης του λογισμικού, συγκεκριμένα: ενημέρωση με χρήση κάρτας μνήμης ή ενημέρωση "με ...