DIY το κάνετε μόνοι σας
Μάστερ μαθήματα, οδηγίες, χρήσιμες συμβουλές, συνταγές.
» » »Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO
Εισαγωγή: Παρουσιάζοντας την Οθόνη I2C OLED 128 * 64/128 * 32.
Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

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

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

Για όσους έχουν παρόμοια επιθυμία, εδώ είναι ένας γρήγορος οδηγός για τη σύνδεση και τον έλεγχο μικρών και ανέξοδων οθονών OLED.
Στη συνέχεια, θα μιλήσουμε για ένα από τα ευρέως διαθέσιμα ραδιοερασιτεχνικά μοντέλα οθονών OLED που ελέγχονται από το τσιπ SSD1306, με μέγεθος οθόνης 0,96 ίντσες και ανάλυση 128 * 64 ή 128 * 32 pixel. Αυτές οι οθόνες είναι ιδανικές για μικρά ερασιτεχνικά ραδιοφωνικά σχέδια και σπιτικά προϊόντα.
Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Βήμα 1: Βασικές έννοιες


Θα το συνδέσουμε με το Arduino UNO / NANO, καλά, και για να προγραμματίσουμε, αντίστοιχα, θα το συνδέσουμε και μέσω του Arduino.
  • Το OLED είναι μια δίοδος εκπομπής οργανικών φωτεινών σημάτων, δηλ. Μια συσκευή ημιαγωγού κατασκευασμένη από οργανικές ενώσεις, η οποία αρχίζει να εκπέμπει φως όταν διέρχεται από αυτό ηλεκτρικό ρεύμα.
  • Το ARDUINO είναι μια πλατφόρμα για συστήματα κατάρτισης και αυτοματισμού κτιρίων και ρομποτικών συστημάτων.
  • Το ArduinoIDE είναι ένα αναπτυξιακό περιβάλλον. Αυτό είναι ένα δωρεάν εργαλείο προγραμματισμού Arduino.
  • I2C - Διασυνδεδεμένα κυκλώματα, γραμμή επικοινωνίας μεταξύ μικροκυκλωμάτων.
  • Ένα σκίτσο, είναι ένας κώδικας, είναι ένα πρόγραμμα - ορολογία Arduino.

Ακολουθήστε τις οδηγίες για να κατανοήσετε τον τρόπο σωστής σύνδεσης και διαμόρφωσης μιας οθόνης OLED στο Arduino και πώς να εμφανίσετε το δικό σας μήνυμα στην οθόνη του.
Κάνουμε τα πάντα με βήματα.

Βήμα 2: Αξεσουάρ


Θα χρειαστούμε μόνο τέσσερα πράγματα:
  • 1. Η ίδια η οθόνη OLED είναι 0.96 "(μπορεί να αγοραστεί σε Aliexpress ή Ebay, - μακρύ, αλλά φθηνό!).
  • 2. Arduino UNO / Nano (στην ίδια θέση με την οθόνη).
  • 3. Σύνδεση καλωδίων (ibid.).
  • 4. Ένας υπολογιστής ή φορητός υπολογιστής με εγκατεστημένο το ArduinoIDE.

Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Γενικά, η αγορά ανταλλακτικών για διάφορα έργα σε Aliexpress και Ebay είναι ένα πολύ δροσερό πράγμα, ενώ κάνετε ένα έργο, τμήματα για άλλα είναι ήδη στο δρόμο. Το κύριο πράγμα είναι να μην ξεχάσουμε να δώσουμε μια παραγγελία.

Βήμα 3: Συνδέστε την οθόνη


Η οθόνη ελέγχεται από το τσιπ SSD1306, το οποίο υποστηρίζει πέντε πρωτόκολλα επικοινωνίας και ένα από τα οποία είναι το I2C. Δεδομένα σχετικά με αυτό το πρωτόκολλο μεταδίδονται σε δύο μόνο καλώδια, και τα λιγότερα καλώδια στην περίπτωση, τόσο το καλύτερο, έτσι μας ταιριάζει καλά. Αλλά! Υπάρχουν μονάδες με πρωτόκολλο SPI και ακόμη και μεταγωγή πρωτοκόλλου, οπότε προσέχετε κατά την αγορά αυτής της μονάδας.
Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Χρησιμοποιημένα συμπεράσματα:
Οθόνη OLED - SCL / SCK (ρολόι) και SDA (δεδομένα), ισχύς "Plus" (VCC) και "Μείον" (GND).
Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Χρησιμοποιημένα συμπεράσματα:
Arduino UNO - SCL / SCK σε A5 και SSD σε ισχύ Α4, "Plus" (+ 5V) και "Minus" (GND).
Συνδέστε την οθόνη στο Arduino:
  • Vcc - 5V
  • GND - GND
  • SDA - A4
  • SCL - A5

Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Βήμα 4: Σαρωτής I2C


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

Συνολικά, μπορούν να χρησιμοποιηθούν έως 127 διευθύνσεις στο δίαυλο - 119 για συσκευές και 8 διευθύνσεις υπηρεσιών. Η επικοινωνία πραγματοποιείται σε αυτές τις διευθύνσεις.Υπάρχει ένας δάσκαλος, είναι Δάσκαλος, αλλά υπάρχει ένας σκλάβος, είναι επίσης ένας Σκλάβος - ρωτούν οι Δάσκαλοι, οι οπαδοί απαντούν, όλα είναι απλά.
Δεδομένου ότι η οθόνη μας OLED χρησιμοποιεί το πρωτόκολλο επικοινωνίας I2C και η διεύθυνση μπορεί να μην αναφέρεται, θα προσπαθήσουμε να μάθουμε αυτή την ίδια τη διεύθυνση.

Αυτό μπορεί να γίνει με τη λήψη ενός σύντομου σκίτσου στον πίνακα Arduino με σύνδεση OLED. ΑΛΛΑ!
Πάρτε το χρόνο σας για να φορτώσετε το σκίτσο στο Arduino αμέσως! Ας αρχίσουμε με τη λήψη του "οδηγού", δηλ. θα συνδέσουμε τις βιβλιοθήκες και γι 'αυτό θα πάμε κατευθείαν στο "Βήμα 5" και μετά θα επιστρέψουμε και θα συνεχίσουμε.

Βήμα 4: Συνέχεια:


Κατεβάστε CODE Finder_I2C_Hex_Address.ino, μεταφορτώστε το στο Arduino.
Ανοίξτε το "Port Monitor", ρυθμίστε την ταχύτητα σε 9600 και αν όλα είναι συνδεδεμένα σωστά, το πρόγραμμα θα εμφανίσει τη διεύθυνση της συσκευής, στην περίπτωσή μου OLED με τη διεύθυνση 0x3F.
Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Βήμα 5: Λήψη και σύνδεση βιβλιοθηκών


Για να λειτουργήσουν σωστά τα πάντα και δεν χρειάστηκε να ανακαλύψετε τον τροχό, πρέπει να συνδέσετε μερικές βιβλιοθήκες στο περιβάλλον ArduinoIDE, δηλαδή: ADAFRUIT GFX και ADAFRUIT SSD1306, είναι απαραίτητες για την ανεξάρτητη επικοινωνία της Arduino με την οθόνη OLED.
Μπορείτε να συνδέσετε αυτές τις βιβλιοθήκες ακολουθώντας αυτά τα βήματα.
  • 1. Στο ArduinoIDE, μεταβείτε στο μενού Σκίτσο.
  • 2. Επιλέξτε "Συμπεριλάβετε βιβλιοθήκες".
  • 3. Επιλέξτε "Διαχείριση Βιβλιοθηκών" / Διαχειριζόμενες Βιβλιοθήκες.
  • 4. Βρείτε το ADAFRUIT GFX και εγκαταστήστε τα.
  • 5. Βρείτε το ADAFRUIT SSD1306 και εγκαταστήστε τα.

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

Ένας άλλος τρόπος για να εγκαταστήσετε βιβλιοθήκες είναι να βρείτε, να κατεβάσετε και να εγκαταστήσετε αυτές τις βιβλιοθήκες μόνοι σας.
Για παράδειγμα του Github:
https://github.com/adafruit/Adafruit-GFX-Library
https://github.com/adafruit/Adafruit_SSD1306

Αυτές είναι οι ίδιες βιβλιοθήκες Adafruit, αλλά παρόμοιες βιβλιοθήκες αναζητούνται εύκολα στις μηχανές αναζήτησης, κατόπιν αιτήματος του OLED I2C. Πολλοί λάτρεις γράφουν τις βιβλιοθήκες "για τους εαυτούς τους" και στη συνέχεια τις βάζουν στο διαδίκτυο. Ποια βιβλιοθήκη να χρησιμοποιήσετε εξαρτάται από εσάς.
Προκειμένου η οθόνη να εμφανίζει ρωσικά γράμματα, απαιτούνται επίσης ειδικές βιβλιοθήκες, αλλά αυτό είναι ένα ξεχωριστό θέμα για ένα ξεχωριστό άρθρο.
Αφού εγκατασταθούν οι βιβλιοθήκες, μπορείτε να επιστρέψετε στο βήμα 4 και τέλος να εντοπίσετε την δεκαεξαδική διεύθυνση της οθόνης σας.

Βήμα 6: Δοκιμή της οθόνης


Για να ελέγξετε αν όλα λειτουργούν όπως αναμένεται, εκτελέστε το παράδειγμα δοκιμής από το ArduinoIDE.
Για να γίνει αυτό:
Πηγαίνετε ΑΡΧΕΙΟ> ΠΑΡΑΔΕΙΓΜΑΤΑ> SSD 1306> Επιλέξτε 128x64 i2c
Αν εμφανίσετε "Σφάλμα", δοκιμάστε να επιλέξετε το SSD 1306> 128x32 i2c.
Αν υπάρχει ξανά σφάλμα, δοκιμάστε να αλλάξετε τη διεύθυνση I2C στη γραμμή 61 του κώδικα επίδειξης και να την αντικαταστήσετε με τη διεύθυνση της οθόνης που ορίσατε στο βήμα # 4.
Αν το σφάλμα εμφανιστεί ξανά, μπορείτε να δοκιμάσετε να επεξεργαστείτε το αρχείο Adafruit_SSD1306.h, βρίσκεται στο φάκελο με τις βιβλιοθήκες Arduino.
Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Ανοίξτε το αρχείο Adafruit_SSD1306.h σε ένα πρόγραμμα επεξεργασίας κειμένου και βρείτε τις γραμμές:
// # ορίστε SSD1306_128_64
#define SSD1306_128_32
// #define SSD1306_96_16 

Αποσύνδεση της γραμμής:
#define SSD1306_128_64. 

Θα πρέπει να είναι έτσι:
#define SSD1306_128_64
// # καθορίστε το SSD1306_128_32
// #define SSD1306_96_16

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

Όταν απολαμβάνετε αυτήν την κινούμενη εικόνα, μπορείτε να προχωρήσετε στο επόμενο βήμα.

Βήμα 7: Γράφοντας το δικό σας μήνυμα


Για να γράψετε το δικό σας μήνυμα, δημιουργήστε πρώτα ένα νέο σκίτσο στο περιβάλλον προγραμματισμού ArduinoIDE.
Στην κεφαλίδα, συνδέουμε 4 βιβλιοθήκες:
#include 
#include 
#include 
#include 

Στη συνέχεια, γράφουμε το πρωτόκολλο επαναφοράς:
#define OLED_RESET 4
Εμφάνιση Adafruit_SSD1306 (OLED_RESET);

Στην VOID SETUP, καθορίστε τη δεκαεξαδική διεύθυνση της οθόνης 0x3C, την οποία βρήκαμε στο "Βήμα 4".
Στη συνέχεια, αρχικοποιήστε την οθόνη και διαγράψτε την:
display.begin (SSD1306_SWITCHCAPVCC, 0x3C).
display.clearDisplay ();

Στη συνέχεια, στο VOID LOOP, γράφουμε τον κύριο κώδικα, δηλαδή το μήνυμά μας, το οποίο θέλουμε να εμφανίσουμε στην οθόνη.
Για να γίνει αυτό, περιγράφουμε το μέγεθος κειμένου, το χρώμα κειμένου, τη θέση του δρομέα και, τέλος, εμφανίζουμε ένα μήνυμα χρησιμοποιώντας την εντολή println:
display.setTextSize (2).
display.setTextColor (ΛΕΥΚΟ);
display.setCursor (0,0);
display.println ("Λοιπόν!");
display.display ();

Στο τέλος, μην ξεχάσετε να γράψετε display.displayέτσι ώστε η εικόνα να εμφανίζεται στην οθόνη, διαφορετικά θα έχετε κενό.
Εάν έχετε κάνει τα πάντα σωστά, θα εμφανιστεί ένα μήνυμα στις οθόνες.
Πώς να συνδέσετε την οθόνη OLED I2C στο ARDUINO

Εδώ είναι το CODE Starting_with_Arduino_OLED.ino του προγράμματος μας:
[946 b] (λήψεις: 1100)
Σχόλια (3)
  1. Tatoshka
    #1 Tatoshka Οι επισκέπτες 14 Νοεμβρίου 2018 21:18
    0
    Σας ευχαριστώ φίλε! Αυτό είναι το πρώτο μου uploaded sketch και η εισαγωγή μου στο Arduino. Δεν μετράει το Blink που αναβοσβήνει))
  2. αλλιστής
    #2 αλλιστής Οι επισκέπτες 28 Ιουλίου 2019 19:35
    0
    Και πού να κατεβάσετε αυτόν τον κωδικό Finder_I2C_Hex_Address.ino;
    1. Αλ
      #3 Αλ Οι επισκέπτες 14 Αυγούστου 2019 12:51
      0
      κάτω από την εικόνα υπάρχει ένας σύνδεσμος "Εδώ είναι το CODE Starting_with_Arduino_OLED.ino του προγράμματος μας:"

Διαβάστε επίσης

Κωδικοί σφαλμάτων για πλυντήρια ρούχων