Πίνακας περιεχομένων:
- Βήμα 1: Συγκέντρωση εργαλείων & εξαρτημάτων
- Βήμα 2: Χτίζοντας το κύκλωμα στο Breadboard
- Βήμα 3: Συγκόλληση
- Βήμα 4: Δοκιμή του τελικού πρώτου μισού του κυκλώματος
- Βήμα 5: Χτίζοντας το δεύτερο ημίχρονο
- Βήμα 6: Το αποτέλεσμα
Βίντεο: 48 X 8 Scrolling LED Matrix Display Using Arduino and Shift Registers .: 6 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Καλησπέρα σε όλους
Αυτό είναι το πρώτο μου Instructable και έχει να κάνει με την κατασκευή ενός 48x 8 προγραμματιζόμενου πίνακα κύλισης LED χρησιμοποιώντας έναν καταχωρητή Arduino Uno και 74HC595. Αυτό ήταν το πρώτο μου έργο με έναν πίνακα ανάπτυξης Arduino. Aταν μια πρόκληση που μου έδωσε ο δάσκαλός μου. Εκείνη τη στιγμή που αποδέχτηκα αυτήν την πρόκληση, δεν ήξερα καν πώς να αναβοσβήνω ένα LED χρησιμοποιώντας ένα arduino. Έτσι, νομίζω ότι ακόμη και ένας αρχάριος μπορεί να το κάνει αυτό με λίγη υπομονή και κατανόηση. Ξεκίνησα με μια μικρή έρευνα σχετικά με τους καταχωρητές βάρδιας και την πολυπλεξία στο arduino. Εάν είστε νέοι σε μετατόπιση καταχωρητών, σας συνιστώ να μάθετε τα βασικά στοιχεία του καταχωρητή βάρδιας πολυπλεξίας και αλυσίδας μαργαρίτας πριν ξεκινήσετε με τους πίνακες. Αυτό θα σας βοηθήσει πολύ να κατανοήσετε τον κώδικα και τη λειτουργία της οθόνης κύλισης.
Βήμα 1: Συγκέντρωση εργαλείων & εξαρτημάτων
Συστατικά
- 1. Arduino Uno R3 - 1
- 2. 74HC595 8 bit Serial to Parallel Shift Registers. - 7
- 3. BC 548/2N4401 Τρανζίστορ - 8
- 4. 470 Ohms Resistors - αριθμός στηλών + 8
- 5. Pref Board 6x4 ίντσες - 4
- 6. Έγχρωμα κωδικοποιημένα σύρματα - Όπως απαιτείται
- 7. Κάτοχοι IC - 7
- 8. Μήκος LED 5 mm ή 3 mm 8x8 κοινού μονόχρωμου καθόδου - 6
- 9. Αρσενικοί και θηλυκοί τίτλοι - Όπως απαιτείται.
Απαιτούνται εργαλεία
- 1. Σετ συγκόλλησης
- 2. Πολύμετρο
- 3. Πιστόλι κόλλας
- 4. Αντλία αποκόλλησης
- 5. Τροφοδοτικό 5V
Βήμα 2: Χτίζοντας το κύκλωμα στο Breadboard
Το πρώτο πράγμα που πρέπει να κάνετε πριν δημιουργήσετε το πρωτότυπο είναι να πάρετε ένα διάγραμμα καρφιτσών του πίνακα 8x8 και να σημειώσετε ένα σημείο αναφοράς για τον προσδιορισμό των ακίδων σε όλους τους πίνακες σας. Αυτό μπορεί να σας βοηθήσει κατά τη συναρμολόγηση του κυκλώματος.
Έχω επισυνάψει ένα διάγραμμα pin της μονάδας μήτρας που έχω χρησιμοποιήσει εδώ. Στη μονάδα μου οι σειρές ήταν οι αρνητικές ακίδες. Αυτό το διάγραμμα pin παραμένει το ίδιο για τις περισσότερες μονάδες στην αγορά.
Φαίνεται στο κύκλωμα ότι ένας μόνο καταχωρητής αλλαγής χρησιμοποιείται για τον έλεγχο των 8 σειρών και για τον έλεγχο των στηλών, χρησιμοποιούμε έναν καταχωρητή βάρδιας για κάθε 8 στήλες.
Ας δημιουργήσουμε μια απλή οθόνη κύλισης 8 x 8 στον πίνακα ψωμιού.
Το κύκλωμα χωρίζεται σε δύο μέρη - έλεγχος γραμμής και έλεγχος στήλης. Ας δημιουργήσουμε πρώτα τον έλεγχο στήλης.
Το pin 4 από το arduino συνδέεται με το pin 14 (SER) του καταχωρητή αλλαγής. (Αυτός είναι ο ακροδέκτης εισαγωγής σειριακών δεδομένων του καταχωρητή αλλαγής ταχυτήτων. Τα λογικά επίπεδα που απαιτούνται για την ενεργοποίηση των LED τροφοδοτούνται μέσω αυτού του πείρου
Το pin 3 από το arduino συνδέεται με το pin 12 (RCLK) του καταχωρητή αλλαγής. (Ας ονομάσουμε αυτόν τον πείρο ως τον πείρο ρολογιού εξόδου. Τα δεδομένα στη μνήμη των καταχωρητών αλλαγής ωθούνται στην έξοδο όταν ενεργοποιηθεί αυτό το ρολόι.)
Το pin 2 από το arduino συνδέεται με το pin 11 (SRCLK) του shift register. (Αυτό είναι το pin του ρολογιού εισόδου που μεταφέρει τα δεδομένα στη μνήμη.)
Το VCC +5V δίνεται στον καταχωρητή αλλαγής μέσω του Pin 16 και το ίδιο συνδέεται με το Pin 10. (Γιατί; Το Pin 10 είναι το SRCLR Pin, το οποίο διαγράφει τα δεδομένα στον καταχωρητή αλλαγής όταν ενεργοποιείται. Είναι ένας ενεργός χαμηλός πείρος, έτσι ώστε να διατηρηθούν τα δεδομένα στη μνήμη του καταχωρητή αλλαγής ταχυτήτων, αυτός ο πείρος πρέπει να παρέχεται με +5V όλη την ώρα.)
Η γείωση συνδέεται τόσο με τον πείρο GND (Pin 8 του καταχωρητή βάρδιας) όσο και με τον ακροδέκτη OE (Pin 13 του καταχωρητή βάρδιας). (Γιατί; Ο ακροδέκτης ενεργοποίησης εξόδου πρέπει να ενεργοποιηθεί για να δώσει εξόδους σύμφωνα με το σήμα του ρολογιού. Είναι ένας ενεργός χαμηλός πείρος ακριβώς όπως και ο SRCLR Pin, οπότε πρέπει να διατηρείται συνεχώς στη βασική κατάσταση για να ενεργοποιηθεί το εξόδους.)
Οι ακίδες στήλης της μήτρας συνδέονται με τον καταχωρητή αλλαγής όπως φαίνεται στο διάγραμμα κυκλώματος με αντίσταση 470 ohms μεταξύ της μήτρας και του καταχωρητή αλλαγής
Τώρα, για το κύκλωμα ελέγχου σειράς.
Ο πείρος 7 από το arduino συνδέεται με τον ακροδέκτη 14 (SER) του καταχωρητή αλλαγής
Ο πείρος 5 από το arduino συνδέεται με τον ακροδέκτη 11 (SRCLK) του καταχωρητή αλλαγής
Ο πείρος 6 από το arduino συνδέεται με τον ακροδέκτη 12 (RCLK) του καταχωρητή αλλαγής
Το VCC +5V δίνεται στο Pin 16 και το Pin 10 όπως περιγράφεται παραπάνω
Η γείωση συνδέεται με το pin 8 και το pin 13
Όπως ανέφερα παραπάνω, οι σειρές ήταν οι αρνητικές ακίδες στην περίπτωσή μου. Είναι καλύτερα να λάβετε υπόψη τις αρνητικές ακίδες της μήτρας σας ως τις σειρές της οθόνης σας. Η σύνδεση γείωσης πρέπει να αλλάξει σε αυτούς τους αρνητικούς πείρους χρησιμοποιώντας τρανζίστορ BC548/2N4401 τα οποία ελέγχονται από τα λογικά επίπεδα εξόδου του καταχωρητή αλλαγής. Έτσι, όσο πιο αρνητικές ακίδες, τόσο περισσότερα τρανζίστορ χρειαζόμαστε
Δώστε τις συνδέσεις σειρών όπως φαίνεται στο διάγραμμα κυκλώματος
Εάν έχετε καταφέρει να δημιουργήσετε το πρωτότυπο οθόνης μήτρας 8 x 8, μπορείτε απλά να αντιγράψετε το τμήμα του κυκλώματος για το στοιχείο ελέγχου στήλης και να επεκτείνετε τη μήτρα σε οποιονδήποτε αριθμό στηλών. Απλώς πρέπει να προσθέσετε ένα 74HC595 για κάθε 8 στήλες (μία μονάδα 8 x 8) και να το αλυσοδέσετε με την προηγούμενη.
Η Daisy που αλυσοδοτεί τους καταχωρητές βάρδιας για προσθήκη περισσότερων στηλών
Η αλυσίδα Daisy στην ηλεκτρολογία είναι ένα σχέδιο καλωδίωσης στο οποίο πολλαπλές συσκευές συνδέονται μεταξύ τους με μια σειρά.
Ο μηχανισμός είναι απλός: οι καρφίτσες SRCLK (ρολόι εισόδου. Pin 11) και RCLK (ρολόι εξόδου. Pin 12) μοιράζονται μεταξύ όλων των καταχωρητών αλλαγής με αλυσίδα μαργαρίτας, ενώ κάθε QH PIN (Pin 9) του προηγούμενου καταχωρητή βάρδιας στο Η αλυσίδα χρησιμοποιείται ως σειριακή είσοδος για τον ακόλουθο καταχωρητή αλλαγής μέσω του κωδικού PER SER (Pin 14).
Με απλά λόγια, με την αλυσίδα της μαργαρίτας των καταχωρητών βάρδιας, μπορούν να ελεγχθούν ως ένας καταχωρητής βάρδιας με μεγαλύτερη μνήμη. Για παράδειγμα, αν συνδέσετε δύο καταχωρητές αλλαγής 8 bit, θα λειτουργήσουν σαν ενιαίοι καταχωρητές μετατόπισης 16 bit.
Ο κώδικας
Στον κώδικα τροφοδοτούμε τις στήλες με τα αντίστοιχα επίπεδα λογικής σύμφωνα με την είσοδο ενώ σαρώνουμε κατά μήκος των γραμμών. Οι χαρακτήρες από το Α έως το Ω ορίζονται στον κώδικα ως επίπεδα λογικής σε έναν πίνακα byte. Κάθε χαρακτήρας έχει πλάτος 5 εικονοστοιχεία και ύψος 7 εικονοστοιχεία. Έχω δώσει μια πιο λεπτομερή εξήγηση σχετικά με τη λειτουργία του κώδικα ως σχόλια στον ίδιο τον κώδικα.
Ο κωδικός Arduino επισυνάπτεται εδώ.
Βήμα 3: Συγκόλληση
Για να γίνει πιο κατανοητό το συγκολλημένο κύκλωμα, το έκανα όσο το δυνατόν μεγαλύτερο και έδωσα ξεχωριστούς πίνακες για τους ελεγκτές σειρών και στηλών και τους συνδέσα μαζί χρησιμοποιώντας κεφαλίδες και σύρματα. Μπορείτε να το κάνετε πολύ μικρότερο συγκολλώντας τα εξαρτήματα πιο κοντά το ένα στο άλλο ή αν είστε καλοί στο σχεδιασμό PCB, μπορείτε επίσης να φτιάξετε ένα μικρότερο προσαρμοσμένο PCB.
Βεβαιωθείτε ότι έχετε τοποθετήσει μια αντίσταση 470 ohms σε κάθε ακίδα που οδηγεί στη μήτρα. Χρησιμοποιείτε πάντα κεφαλίδες για να συνδέσετε τις μήτρες LED στην πλακέτα. Είναι καλύτερα να μην τα κολλήσετε απευθείας στην σανίδα, καθώς η παρατεταμένη έκθεση στη θερμότητα μπορεί να τα βλάψει μόνιμα.
Καθώς έφτιαξα ξεχωριστούς πίνακες για τα χειριστήρια γραμμών και στηλών, επέκτεινα καλώδια από τη μία σανίδα στην άλλη για να συνδέσω τις στήλες. Εδώ, ο πίνακας στο επάνω μέρος είναι για τον έλεγχο των γραμμών και ο πίνακας στο κάτω μέρος για τον έλεγχο των στηλών.
χρειάζεται μόνο ένα μόνο 74HC595 για να οδηγήσει και τις 8 σειρές. Αλλά με βάση τον αριθμό των στηλών, πρέπει να προστεθούν περισσότεροι καταχωρητές αλλαγής, δεν υπάρχει θεωρητικό όριο για τον αριθμό των στηλών που μπορείτε να προσθέσετε σε αυτόν τον πίνακα. Πόσο μεγάλο μπορείς να το κάνεις; Ενημερώστε με όταν φτάσετε εκεί!;)
Βήμα 4: Δοκιμή του τελικού πρώτου μισού του κυκλώματος
Πάντα να το δοκιμάζετε στη μέση για να βρείτε πιθανά σφάλματα όπως χαλαρές συνδέσεις, λανθασμένη σύνδεση καρφιτσών κλπ. Πολλοί άνθρωποι που μου ζήτησαν βοήθεια για να βρουν το σφάλμα στη μήτρα τους έκαναν το λάθος τους με το pin-out της στήλης γραμμής της μονάδας μήτρας. Ελέγξτε το δύο φορές πριν από τη συγκόλληση και χρησιμοποιήστε έγχρωμα κωδικοποιημένα σύρματα για να διακρίνετε εύκολα τις ακίδες.
Βήμα 5: Χτίζοντας το δεύτερο ημίχρονο
Επεκτείνετε το ίδιο κύκλωμα ελέγχου στήλης. Οι σειρές συνδέονται σε σειρά με την προηγούμενη.
Οι ακίδες SRCLK και RCLK λαμβάνονται παράλληλα και το QH (Σειρά δεδομένων έξω. Καρφίτσα 9) του τελευταίου καταχωρητή βάρδιας του τελικού κυκλώματος συνδέεται με το SER (Serial Data in. Pin 14) του επόμενου καταχωρητή βάρδιας. Η ισχύς VCC και GND μοιράζεται επίσης σε όλα τα IC.
Βήμα 6: Το αποτέλεσμα
Αφού τελειώσετε με τη συγκόλληση, το επόμενο βήμα είναι να φτιάξετε μια θήκη για την οθόνη σας. Είναι πάντα καλύτερο να σχεδιάσετε μια προσαρμοσμένη θήκη χρησιμοποιώντας το Fusion 360 ή οποιοδήποτε άλλο εργαλείο σχεδιασμού 3D και να εκτυπώσετε τη θήκη 3D. Καθώς δεν είχα πρόσβαση σε τρισδιάστατη εκτύπωση εκείνη τη στιγμή, έφτιαξα μια ξύλινη θήκη με τη βοήθεια ενός φίλου που είναι καλός στην ξυλουργική.
Ελπίζω να σας άρεσε να διαβάζετε αυτό το διδακτικό. Δημοσιεύστε τις φωτογραφίες της έκδοσής σας αυτού του έργου στην παρακάτω ενότητα σχολίων και αν έχετε ερωτήσεις, μη διστάσετε να το ρωτήσετε εδώ ή στείλτε ένα μήνυμα ηλεκτρονικού ταχυδρομείου στο [email protected]. Θα χαρώ να σας βοηθήσω.
Συνιστάται:
Arduino Control DC Speed and Direction Speed and Direction Using Potentiometer, OLED Display & Buttons: 6 βήματα
Arduino Control DC Motor Speed and Direction Speed and Direction Using Potentiometer, OLED Display & Buttons: Σε αυτό το σεμινάριο θα μάθουμε πώς να χρησιμοποιούμε πρόγραμμα οδήγησης L298N DC MOTOR CONTROL και ποτενσιόμετρο για τον έλεγχο της ταχύτητας και της κατεύθυνσης του κινητήρα DC με δύο κουμπιά και εμφάνιση της τιμής του ποτενσιόμετρου στην οθόνη OLED. Παρακολουθήστε ένα βίντεο επίδειξης
Cascade of Shift Registers 74HC595 Controlled Via Arduino and Ethernet: 3 Steps
Cascade of Shift Registers 74HC595 Controlled Via Arduino and Ethernet: Σήμερα θα ήθελα να παρουσιάσω ένα έργο που έχω εφαρμόσει σε δύο εκδόσεις. Το έργο χρησιμοποιεί 12 καταχωρητές βάρδιας 74HC595 και 96 LED, πίνακα Arduino Uno με ασπίδα Ethernet Wiznet W5100. 8 LED είναι συνδεδεμένα σε κάθε καταχωρητή αλλαγής ταχυτήτων. Οι αριθμοί 0
DIY LED Dot Matrix Scrolling Display Using Arduino: 6 βήματα
DIY LED Dot Matrix Scrolling Display Using Arduino: Hello InstruThis is my First Instructable. Σε αυτό το Instructable, θα δείξω πώς φτιάχνω μια κύλιση οθόνης DIY LED Dot Matrix χρησιμοποιώντας το Arduino ως MCU. Αυτού του είδους οι οθόνες εμφανίζονται στο σιδηροδρομικό σταθμό, το σταθμό λεωφορείων, τους δρόμους και πολλά άλλα μέρη. Εκεί
Χρήση 2 Shift Registers (74HC595) για οδήγηση 16 LED: 9 βήματα
Χρήση 2 Shift Registers (74HC595) για οδήγηση 16 LED: Αυτό το κύκλωμα θα χρησιμοποιεί 2 καταχωρητές βάρδιας (74HC595). Οι καταχωρητές βάρδιας θα κινούνται ως έξοδοι 16 LED. Κάθε καταχωρητής βάρδιας θα οδηγεί 8 LED. Οι καταχωρητές βάρδιας είναι ενσύρματοι έτσι ώστε κάθε έξοδος καταχωρητή αλλαγής να μοιάζει με διπλότυπο του άλλου
LED Matrix χρησιμοποιώντας Shift Registers: 7 βήματα (με εικόνες)
LED Matrix Using Shift Registers: Αυτό το διδακτικό πρέπει να είναι μια πληρέστερη εξήγηση από άλλες διαθέσιμες στο διαδίκτυο. Αξιοσημείωτο, αυτό θα παράσχει περισσότερες εξηγήσεις υλικού από ό, τι είναι διαθέσιμο στο LED Marquee, το οποίο μπορεί να διδαχθεί από το led555.GoalsΑυτό το εκπαιδευτικό παρουσιάζει τις έννοιες