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

Αναλογικό ψηφιακό ρολόι: 4 βήματα (με εικόνες)
Αναλογικό ψηφιακό ρολόι: 4 βήματα (με εικόνες)

Βίντεο: Αναλογικό ψηφιακό ρολόι: 4 βήματα (με εικόνες)

Βίντεο: Αναλογικό ψηφιακό ρολόι: 4 βήματα (με εικόνες)
Βίντεο: Πώς να μετατρέψετε μία απλή τηλεόραση σε Smart TV! 2024, Ιούλιος
Anonim
Image
Image
Χτίζοντας το ρολόι
Χτίζοντας το ρολόι

Ο λόγος για την κατασκευή αυτού του ρολογιού ήταν επειδή το αρχικό μου ρολόι IKEA δεν λειτουργούσε πια και μου άρεσε πολύ το περίβλημα αυτού του ρολογιού. Το βρήκα χαμένο να πετάξω το ρολόι και αποφάσισα να το ξαναχρησιμοποιήσω για αναλογικό / ψηφιακό ρολόι.

Θα μπορούσα να είχα φτιάξει ένα τυπικό ρολόι αλλά αποφάσισα να κάνω κάτι διαφορετικό. Όπως κάθε άλλο ρολόι, δείχνει την ώρα αλλά όχι με τυπικό τρόπο. Χρησιμοποιώντας 60 διχρωματικές κόκκινες/πράσινες λυχνίες LED το ρολόι δείχνει την ώρα. Τα κόκκινα LED χρησιμοποιούνται για την εμφάνιση των ωρών και τα πράσινα LED για τα λεπτά. Τα δευτερόλεπτα υποδεικνύονται με ένα κίτρινο (κόκκινο + πράσινο) LED και ένα κίτρινο LED που αναβοσβήνει στο κέντρο του ρολογιού.

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

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

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

Βήμα 1: Τα σχέδια

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

  1. Χρησιμοποιώντας έναν τυπικό κρύσταλλο 20 MHz για το PIC. Με αυτό το σχέδιο το ρολόι ήταν εκτός συγχρονισμού 1 δευτερόλεπτο μετά από μία ημέρα λειτουργίας. Αυτό ήταν πάρα πολύ. Δίπλα σε αυτό χάθηκε ο χρόνος όταν απενεργοποιήσατε το ρολόι αφού δεν υπήρχε εφεδρική μπαταρία στο σχέδιο.
  2. Χρήση μονάδας ρολογιού DS1302. Το ωραίο με αυτήν την ενότητα είναι ότι διαθέτει εφεδρική μπαταρία, οπότε δεν χάνεται ο χρόνος όταν απενεργοποιείτε το ρολόι. Όταν δοκίμασα το ρολόι με αυτήν τη μονάδα, το ρολόι ήταν εκτός συγχρονισμού 7 δευτερόλεπτα! μετα απο μια μερα. Νομίζω ότι αυτό προκαλείται είτε από λάθος κρύσταλλο είτε από κακό σχεδιασμό PCB.
  3. Χρήση μονάδας ρολογιού DS3231. Αυτή η μονάδα διαθέτει επίσης εφεδρική μπαταρία και είναι πιο ακριβής από την DS1302. Το ρολόι λειτούργησε καλά με αυτήν την ενότητα, οπότε το χρησιμοποίησα για τον τελικό σχεδιασμό. Εξαιτίας αυτού, το PIC δεν χρειαζόταν πλέον κρύσταλλο.

Ο πλήρης σχεδιασμός καταρτίζεται σε τρία σχηματικά διαγράμματα:

  1. Ελεγκτής ρολογιού χρησιμοποιώντας το PIC
  2. Πρόγραμμα οδήγησης led χρησιμοποιώντας καταχωρητές βάρδιας
  3. 60 LED με δύο χρώματα

Βήμα 2: Απαιτούμενα εξαρτήματα

Πρέπει να έχετε τα ακόλουθα στοιχεία για αυτό το έργο:

  • Ένα κομμάτι ψωμιού
  • Μικροελεγκτής PIC 16F1823
  • Μητρώο 3 βάρδιων 74HC595
  • 1 Darlington Transistor Array ULN2803A
  • Υποδοχές IC: 1 * 14-pin, 3 * 16-pin, 1 * 18-pin
  • Μονάδα ρολογιού DS3231
  • 2 διακόπτες με κουμπιά
  • Αντιστάσεις: 2 * 33k, 8 * 100 Ohm, 8 * 47 Ohm
  • 1 ηλεκτρολυτικός πυκνωτής 100 uF/16V
  • 4 πυκνωτές 100 nF
  • LED: 60 δίχρωμο 2 mm (κόκκινο/πράσινο), 1 5 mm κίτρινο
  • Βύσμα βύσματος 3 mm
  • Προσαρμογέας 5 Volt, για παράδειγμα αυτός που χρησιμοποιείται για τη φόρτιση ενός Smartphone. Βεβαιωθείτε ότι είναι πραγματικό τροφοδοτικό 5 Volt.
  • Προαιρετικά: Κεφαλίδες για τη σύνδεση των εξωτερικών τμημάτων στο breadboard
  • Σύρμα Kynar & απογυμνωτής σύρματος
  • Ένα περίβλημα για το ρολόι σας.

Δείτε τα σχηματικά διαγράμματα σχετικά με τον τρόπο σύνδεσης των εξαρτημάτων. Απαιτεί αρκετή συγκόλληση, ειδικά για τη σύνδεση των 60 LED. Τα σχηματικά διαγράμματα περιλαμβάνονται στο αρχείο zip.

Βήμα 3: Χτίζοντας το ρολόι

Χτίζοντας το ρολόι
Χτίζοντας το ρολόι
Χτίζοντας το ρολόι
Χτίζοντας το ρολόι

Ρίξτε μια ματιά στις εικόνες για το πώς φτιάχνω το ρολόι. Ξεκίνησα αφαιρώντας τα εσωτερικά του αρχικού ρολογιού και μετά άνοιξα 60 οπές των 2 mm για τα δίχρωμα LED στην μπροστινή πλάκα. Στη συνέχεια, έβαψα τη μπροστινή πλάκα μαύρη και πρόσθεσα ένα κομμάτι πλαστικό για να καλύψω την τρύπα όπου τοποθετήθηκαν οι αρχικοί δείκτες του ρολογιού. Τώρα ένα κίτρινο LED βρίσκεται σε αυτή τη θέση.

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

Στο πίσω κάλυμμα τοποθέτησα τα δύο κουμπιά και το power jack. Ξεχάστε το επιπλέον πιάτο που κόλλησα στο πίσω μέρος όπως φαίνεται στην εικόνα. Πρόσθεσα ότι επειδή στον πρώτο μου σχεδιασμό τα κουμπιά ήταν εκεί, αλλά έπρεπε να τα μετακινήσω επειδή έπρεπε να προσθέσω τη μονάδα DS3231 και μπορούσα να βρω μόνο ένα σημείο όπου ήταν αυτά τα κουμπιά όταν έκανα το πρώτο μου σχέδιο.

Βήμα 4: Το Λογισμικό

Όπως ήδη αναφέρθηκε, το λογισμικό είναι γραμμένο για PIC16F1823 χρησιμοποιώντας τη γλώσσα προγραμματισμού JAL. Ο PIC λειτουργεί με εσωτερικό ρολόι 32 MHz. Όπως αναφέρθηκε προηγουμένως, ο χρονισμός του ρολογιού γίνεται από τη μονάδα ρολογιού DS3231.

Το λογισμικό εκτελεί τις ακόλουθες κύριες εργασίες:

  • Αρχικοποίηση της μονάδας DS3231 χρησιμοποιώντας μια διεπαφή I2C. Η μονάδα θα παράγει ένα σήμα 1 δευτερολέπτου το οποίο είναι συνδεδεμένο με τον ακροδέκτη διακοπής του PIC. Ο PIC χρησιμοποιεί αυτήν τη διακοπή 1 δευτερολέπτου για να διαβάσει την ώρα από τη μονάδα DS3231.
  • Οδηγείτε τα 60 δίχρωμα LED μέσω των καταχωρητών αλλαγής ταχυτήτων. Στο σχηματικό διάγραμμα φαίνεται ότι τα LED είναι συνδεδεμένα σε μήτρα 16 επί 8. Αυτό μειώνει τον αριθμό των καλωδίων που χρειάζονται για τη σύνδεση όλων των LED. Αυτός ο σχεδιασμός μήτρας απαιτεί από το PIC να πολλαπλασιάσει τα LED για να μπορέσει να τα φωτίσει ξεχωριστά. Η πολυπλεξία των LED γίνεται σε διακοπή, όπου η συχνότητα ανανέωσης είναι 70 Hz τόσο αόρατη στο ανθρώπινο μάτι.
  • Χειρισμός των κουμπιών. Αυτά χρησιμοποιούνται για τον καθορισμό της ώρας, ένα για ρύθμιση των ωρών και ένα για ρύθμιση των λεπτών. Και τα δύο κουμπιά πρέπει να πατηθούν για να ενεργοποιήσετε τη λειτουργία ρύθμισης χρόνου. Όταν επιλεγεί η λειτουργία ρύθμισης ώρας, το κίτρινο led θα είναι συνεχώς αναμμένο. Μετά από 5 δευτερόλεπτα μη χρήσης των κουμπιών, το ρολόι επιστρέφει στην κανονική λειτουργία χρόνου και η κίτρινη λυχνία LED θα αρχίσει να αναβοσβήνει.

Δείτε το δεύτερο βίντεο σχετικά με τον τρόπο ρύθμισης της ώρας.

Το αρχείο προέλευσης JAL και το αρχείο Intel Hex για τον προγραμματισμό του PIC επισυνάπτονται στο αρχείο zip. Εάν ενδιαφέρεστε να χρησιμοποιήσετε τον μικροελεγκτή PIC με JAL - μια γλώσσα προγραμματισμού όπως το Pascal - επισκεφτείτε τον ιστότοπο του JAL.

Διασκεδάστε χτίζοντας το δικό σας έργο και περιμένετε τις αντιδράσεις σας.

Συνιστάται: