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

Χρήση οθόνης 4 ψηφίων & 7 τμημάτων, με Arduino: 7 βήματα
Χρήση οθόνης 4 ψηφίων & 7 τμημάτων, με Arduino: 7 βήματα

Βίντεο: Χρήση οθόνης 4 ψηφίων & 7 τμημάτων, με Arduino: 7 βήματα

Βίντεο: Χρήση οθόνης 4 ψηφίων & 7 τμημάτων, με Arduino: 7 βήματα
Βίντεο: How to use TM1637 4 digits seven segment display with Arduino 2024, Νοέμβριος
Anonim
Χρήση οθόνης 4 ψηφίων & 7 τμημάτων, με Arduino
Χρήση οθόνης 4 ψηφίων & 7 τμημάτων, με Arduino

Σε αυτό το σεμινάριο θα σας δείξω πώς να χρησιμοποιήσετε μια οθόνη 7 τμημάτων με 4 ψηφία χρησιμοποιώντας το arduino. Μερικά βασικά πράγματα που θα ήθελα να επισημάνω είναι ότι αυτό καταλαμβάνει σχεδόν όλες τις ψηφιακές ακίδες στο arduino uno, leonardo, τους πίνακες με 13 ψηφιακές ακίδες. Οι περισσότερες οθόνες έχουν 12 ακροδέκτες που συνδέονται είτε απευθείας με το arduino είτε μέσω αντίστασης. Επίσης, θα ήθελα να επισημάνω ότι αυτές οι οθόνες δεν χρειάζονται σύνδεση Ground, 5V ή 3.3V. Ας ξεκινήσουμε λοιπόν…

Βήμα 1: Υλικά

Υλικά
Υλικά
Υλικά
Υλικά
Υλικά
Υλικά
Υλικά
Υλικά

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

- 4 x 330Ω αντιστάσεις

- 12 x Καλώδια από jumper αρσενικά έως αρσενικά

- 1 x Arduino

- 1 x breadboard οποιουδήποτε μεγέθους (δεν χρειάζονται τις ράγες τροφοδοσίας)

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

Βήμα 2: Διάταξη Breadboard

Διάταξη Breadboard
Διάταξη Breadboard

Απλώς για να σας δώσω κάποιο πλαίσιο, θα εξηγήσω τη χρήση κάθε καρφίτσας. 8 από τις 12 ακίδες της οθόνης χρησιμοποιούνται για τα 8 τμήματα. Υπάρχουν 7 τμήματα που χρησιμοποιούνται για να σχηματίσουν οποιοδήποτε ψηφίο, ενώ ένα ελέγχει το δεκαδικό ψηφίο. Οι άλλες 4 από τις 12 ακίδες ελέγχουν καθένα από τα 4 ψηφία στην οθόνη. Οποιοσδήποτε πείρος που έχει αντίσταση είναι ένας από τους 4ψήφιους πείρους, διαφορετικά είναι οι ακίδες τμημάτων.

Το παραπάνω σχέδιο δημιούργησα από το fritzing για να δείξω τη σύνδεση μεταξύ της οθόνης και του arduino. Σημειώστε τη θέση όπου βρίσκονται οι αντιστάσεις επειδή εάν συνδέσετε την αντίσταση με λάθος ακίδα στην οθόνη, είτε αυτό το ψηφίο δεν θα λειτουργήσει είτε το τμήμα δεν θα λειτουργήσει, ΓΙΑ ΠΑΝΤΑ…

***ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ***

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

Βήμα 3: Εγκατάσταση της βιβλιοθήκης

Η βιβλιοθήκη που συνδέεται παρακάτω είναι από τον ιστότοπο arduino για εύκολο έλεγχο μιας οθόνης. Ο σύνδεσμος πηγαίνει στο github. Αν δεν έχετε πάει ποτέ στο github ακούστε προσεκτικά, αν έχετε διαβάσει την επόμενη παράγραφο. Όταν φτάσετε στον ιστότοπο, κοιτάξτε τη δεξιά πλευρά του παραθύρου και κοιτάξτε κάτω μέχρι να δείτε "Λήψη φερμουάρ". Κάντε κλικ σε αυτό το κουμπί και δείτε το να εμφανίζεται στις λήψεις σας.

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

ΣΠΟΥΔΑΙΟΣ. Εάν η εφαρμογή arduino άνοιξε και εκτελέστηκε ενώ βάζατε τη βιβλιοθήκη στο φάκελο βιβλιοθήκες, το arduino δεν θα αναγνωρίσει τη βιβλιοθήκη. Απλώς πρέπει να κλείσετε την εφαρμογή και να την ανοίξετε ξανά.

github.com/DeanIsMe/SevSeg

Βήμα 4: Ο κώδικας

Ο κώδικας
Ο κώδικας

Ο κώδικας για την πραγματική εμφάνιση κάτι παρατίθεται παρακάτω.

#include "SevSeg.h"

SevSeg sevseg; // Εκκίνηση επτά τμημάτων ελεγκτή αντικειμένου void setup () {byte numDigits = 4; byte digitPins = {2, 3, 4, 5}; byte segmentPins = {6, 7, 8, 9, 10, 11, 12, 13}; bool resistorsOnSegments = 0; // η μεταβλητή παραπάνω υποδεικνύει ότι 4 αντιστάσεις τοποθετήθηκαν στις ψηφιακές ακίδες. // ορίστε τη μεταβλητή στο 1 εάν θέλετε να χρησιμοποιήσετε 8 αντιστάσεις στις ακίδες τμημάτων. sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins, resistorsOnSegments); sevseg.setBrightness (90); } void loop () {sevseg.setNumber (3141, 3); sevseg.refreshDisplay (); // Πρέπει να εκτελείται επανειλημμένα

Βήμα 5: Το αποτέλεσμα

Εάν συνδέσατε σωστά την οθόνη, ανεβάσατε σωστά τον κωδικό και αντιγράψατε τον κωδικοποιημένο σωστά, τότε η οθόνη σας θα πρέπει να εμφανίζει pi (μόνο 3.141).

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

Εάν το καταλάβατε σωστά, τότε προτείνω να διαβάσετε παρακάτω στο βήμα επτά.

Βήμα 6: Αντιμετώπιση προβλημάτων

Εδώ έχω απαριθμήσει δύο πιθανά πράγματα που θα μπορούσαν να έχουν συμβεί στην οθόνη σας και θα μπορούσαν να την είχαν μπερδέψει. Δυστυχώς μόνο ένα από τα δύο μπορεί να διορθωθεί.

- Η οθόνη σας εμφανίζει 8888

Μην ανησυχείτε ότι αυτό είναι το πρόβλημα που μπορεί να διορθωθεί, απλώς ακολουθήστε αυτά τα βήματα

1. Εντοπίστε στον κωδικό "sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins);"

2. Αλλάξτε "ΚΟΙΝΟΣ ΚΑΘΟΔΟΣ" σε "ΚΟΙΝΗ ΑΝΟΔΟΣ"

3. Ανεβάστε ξανά τον κωδικό

- Η οθόνη σας εμφανίζει 3. 41 ή.141 ή 3.1 1 ή 3.14 χωρίς το άλλο 1

Δυστυχώς, αυτό το πρόβλημα μπορεί είτε να διορθωθεί είτε όχι: (… (αυτό είναι το πρόσωπο που κλαίει)

1. Ελέγξτε τις συνδέσεις σας και βεβαιωθείτε ότι όλα είναι συνδεδεμένα και δεν κάνουν παρέα

2. Ελέγξτε ξανά το σχηματικό, γιατί πιθανότατα το συνδέσατε λάθος

3. Εντοπίστε τη γραμμή σε κενό βρόχο όπου λέει να εμφανιστεί (3.141, 3) και αλλάξτε 3.141 σε 8888 και δείτε αν λείπει μία από τις 8

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

5. Εάν δεν βλέπετε πουθενά ένα μαύρο σημάδι, απλώς ενεργοποιήσατε καλώδια που δεν μπορούν να εξουδετερωθούν, οπότε ελέγξτε το διάγραμμα και συνδέστε το σωστά και αλλάξτε ξανά τον κωδικό από 8888 σε 3.141.

Βήμα 7: Προχωρώντας παραπέρα

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

Είναι απλώς μια ιδέα που μου ήρθε, αλλά δεν ξέρω πώς να το κάνω ή αν είναι ακόμη δυνατό με το arduino και τη βιβλιοθήκη της οθόνης, αλλά γεια, τροφή για σκέψη για τους περίεργους.

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

Συνιστάται: