Wie man OLED -Display mit Arduino Nano anstellt

Wie man OLED -Display mit Arduino Nano anstellt

Arduino Nano ist eine kleine Mikrocontroller -Karte, die ATMEGA328P verwendet, um Anweisungen zu verarbeiten. Es ähnelt dem Arduino Uno, aber es ist viel kleiner und hat einen niedrigeren Preis. Arduino Nano wird häufig in Projekten verwendet. Der Arduino -Nano kann verwendet werden, um die OLED -Anzeige- und Prozesssensordaten zu steuern. Dieser Artikel wird die Schnittstelle eines OLED -Displays mit Arduino Nano abdecken.

Diese Lektion enthält folgende Themen:

  • 1: Einführung in die OLED -Anzeige
  • 2: Verkabelung OLED -Anzeigemodul an Arduino Nano
  • 3: Installation der erforderlichen Bibliotheken
  • 4: Überprüfen Sie die I2C -Adresse der OLED -Anzeige
  • 5: OLED -Display Arduino IDE Beispiel
  • 5.1: Code
  • 5.2: Ausgabe
  • 6: Statischer Textdruck auf OLED -Display mit Arduino Nano
  • 6.1: Code
  • 6.2: Ausgabe

1: Einführung in die OLED -Anzeige

Ein I2C-OLED-Display ist ein organischem lichtemittierender Diodenbildschirm, der das I2C-Protokoll (Inter-Integrated Circuit) für die Kommunikation verwendet. OLED-Bildschirme haben ein hohes Kontrastverhältnis und einen größeren Betrachtungswinkel, wodurch sie für eine Vielzahl von Anzeigeanwendungen gut geeignet sind.

Ein I2C -OLED -Display besteht in der Regel aus einem kleinen OLED -Bildschirm und einem Treiberkreis, der die I2C -Signale in die entsprechenden Spannungen und Ströme umwandelt, die zum Anfahren der OLED -Pixel erforderlich sind.

LEDs im OLED -Bildschirm beleuchten die Pixel, die uns verschiedene Bilder und Text anzeigen. Auf der anderen Seite verwendet der LCD -Bildschirm eine Hintergrundbeleuchtung, um seine Pixel zu beleuchten. Diese Pixelhelligkeit kann separat gesteuert werden.

Jetzt werden wir Arduino Nano mit einem OLED -Display interpretieren.

2: Verkabelung OLED -Anzeigemodul an Arduino Nano

OLED -Bildschirme arbeiten hauptsächlich an zwei Kommunikationsprotokollen. Das sind I2C und SPI. Unter diesen beiden SPI (serielle periphere Grenzfläche) ist im Vergleich zu I2C schneller, aber die meiste Zeit wird I2C -OLED -Anzeige aufgrund einer geringeren Anzahl von Drähten bevorzugt.

I2C ist ein serielles Kommunikationsprotokoll mit zwei Draht

Mit i2c OLED -SDA und SCL reichen aus, um Bilder und Text anzuzeigen. Das angegebene Bild zeigt Arduino Nano mit 0.OLED-Bildschirm von 96 Zoll (128 × 64 Pixel).

Unten finden Sie die PIN -Verbindungstabelle:

Da wir Arduino Nano mit einem OLED -Display miteinander verbunden haben, werden wir jetzt die erforderlichen Bibliotheken in der Arduino -IDE installieren, damit wir mit Formen, die auf dem OLED -Bildschirm angezeigt werden.

3: Installation der erforderlichen Bibliotheken

Zum Anzeigen von Bildern müssen wir die erforderlichen Bibliotheken für die OLED -Anzeige in Arduino IDE installieren. Ohne diese Bibliotheken kann Arduino Nano Grafiken nicht auf OLED anzeigen.

Hauptsächlich werden zwei Bibliotheken von Adafruit verwendet: SSD1306 und GFX -Bibliothek.

Offene Arduino Integrated Environment (IDE) und durchsuchen Sie die SSD1306 -Bibliothek. Installieren Sie die AdaFruit SSD1306 -Bibliothek.

Eine andere Art der Installation besteht darin,: Skizze> Bibliothek einschließen> Bibliotheken verwalten:

Installieren Sie nun die GFX Bibliothek von Adafruit:

Da wir beide Bibliotheken installiert haben, können wir jetzt einfach Arduino Nano mit einem OLED -Display programmieren.

4: Überprüfen Sie die I2C -Adresse der OLED -Anzeige

I2C oder interintegrierte Schaltung ist ein Kommunikationsprotokoll, mit dem mehrere Geräte verbunden werden können und über eine Zwei-Draht-Schnittstelle miteinander kommunizieren können. Jedes I2C -Gerät muss eine eindeutige Adresse im Bereich von 0 bis 127 haben, um sicherzustellen, dass es auf der i2c -Linie identifiziert und kommuniziert werden kann. Mehrere Geräte mit derselben i2C -Adresse können nicht den gleichen i2C -Bus verwenden.

Schließen Sie das OLED -Display mit Arduino Nano an und nach der Auswahl der Karte und des Ports in Arduino IDE den folgenden Code in die Nano -Board hoch, um die I2C -Adresse des OLED -Bildschirms zu überprüfen.

#Include /*Draht einschließen.H Bibliothek für OLED -Anzeige*/
void setup ()

Kabel.Start(); /*I2c Kommunikation mit OLED -Starts*/
Serie.Beginnen Sie (9600); /*Baudrate für serielle Kommunikation*/
während (!Serie); /*Warte auf die serielle Ausgabe*/
Serie.println ("\ ni2c Scanner");

Hohlraumschleife ()

Byte err, adr; /*Variabler Fehler wird mit der Adresse von i2c*/definiert
int number_of_devices;
Serie.println ("Scannen.");
number_of_devices = 0;
für (ADR = 1; ADR < 127; adr++)

Kabel.BeginnTransmission (ADR);
err = verdrahtet.Endtransmission ();
if (err == 0)

Serie.print ("I2C -Gerät unter Adresse 0x");
if (adr < 16)
Serie.print ("0");
Serie.print (adr, hex);
Serie.println (" !");
number_of_devices ++;

sonst wenn (err == 4)

Serie.print ("Unbekannter Fehler bei Adresse 0x");
if (adr < 16)
Serie.print ("0");
Serie.println (adr, hex);


if (number_of_devices == 0)
Serie.println ("keine I2C -Geräte angehängt \ n");
anders
Serie.println ("Done \ n");
Verzögerung (5000); /*Warte 5 Sekunden auf den nächsten i2c Scan*/

Nach dem Hochladen von Code auf Arduino Nano wird nach der genannten Ausgabe auf dem Seriennachmonitur angezeigt. Unser OLED ist unter 0x3c -Adresse verbunden.


Der 0x3c I2C -Adresse wird im Arduino -Nano -Code für Schnittstellen von OLED -Displays verwendet.

5: OLED -Display Arduino IDE Beispiel

Sobald die OLED -Display -Bibliotheken in der Arduino -IDE installiert sind, können wir in der IDE einen vorgeschriebenen Beispielcode sehen. Um die Arduino -Nano -Schnittstelle zu testen, werden wir einen SSD1306 -Beispielcode in Arduino Nano hochladen.

Gehe zu: Datei> Beispiele> Adafruit SSD1306> SSD1306_128X64_I2C

Notiz: Denken Sie daran, das korrekte Größe und das Kommunikationsprotokoll beim Öffnen von Beispielcode auszuwählen. Hier in unserem Fall verwenden wir I2C OLED mit einer Größe von 128x64.

1: Code

Ein neues IDE -Fenster öffnet sich, in dem wir den Adafruit OLED -Beispielcode sehen können. Dieser Code zeigt verschiedene Muster auf OLED an wie Sterne, Kreise, Scrollentext und animierter Text.

Notiz: Denken Sie daran, die I2C -Adresse mit Ihrem eigenen Display zu aktualisieren.

2: Ausgabe

Nach dem Hochladen von Code auf Arduino Nano können wir verschiedene Muster auf der OLED -Anzeige sehen:

Jetzt haben wir das OLED -Display erfolgreich mit Arduino Nano mit dem vorgeschriebenen Bibliothekscode miteinander verbunden. Jetzt werden wir mit Arduino Nano einen Text auf einem OLED -Bildschirm mit Arduino Nano anzeigen.

6: Statischer Textdruck auf OLED -Display mit Arduino Nano

Mit der Adafruit GFX -Bibliothek können wir Text auf einem OLED -Bildschirm anzeigen. Jetzt schreiben wir einen einfachen Code, um Text auf OLED anzuzeigen.

1: Code

Öffnen Sie Arduino IDE und hochladen Code in Arduino Nano Board:

#enthalten
#enthalten
#enthalten
#define screen_width 128 /*128 Breite von OLED in Pixel* /
#define screen_height 64 /*64 Höhe von OLED in Pixel* /
Adafruit_ssd1306 display (screen_width, screen_height & draht, -1); /*OLED -Anzeige an I2C -Stiften (SDA, SCL)*///
void setup ()
Serie.Beginnen Sie (115200); / *Baud Rate UART -Kommunikation *//
Wenn(!Anzeige.Beginn (SSD1306_Switchcapvcc, 0x3c)) /*i2c -Adresse, an der OLED kommuniziert* /
Serie.println (f ("SSD1306 -Allokation fehlgeschlagen");
für(;;);

Verzögerung (2000);
Anzeige.ClearDisplay (); /*Anzeige löschen*/
Anzeige.setTextSize (2); /*OLED -Bildschirm Textgröße definiert*/
Anzeige.setTextColor (weiß); /*OLED -Bildschirm Textfarbe*///
Anzeige.setCursor (0, 10); /*Statischer Text anzeigen*//
Anzeige.println ("LinuxHint.com "); /*String, die auf OLED -Anzeige dargestellt werden soll* /
Anzeige.Anzeige();

void Loop ()

Zuerst haben wir zuerst die beiden Bibliotheken importiert, die die Draht- und Adafruit -Bibliothek umfassen. Das Kabel.Die Bibliothek ermöglicht es uns, das I2C -Kommunikationsprotokoll zu verwenden, während die zweite Adafruit -Bibliothek dazu beiträgt, Text auf einem OLED -Bildschirm anzuzeigen.

Als nächstes wird der Code unten definiert: Anzeigefunktion:

Adafruit_ssd1306 display (screen_width, screen_height & draht, -1);

Die Adafruit -Anzeigenbefehle nehmen 4 Parameter vor, die die enthalten Screen_width und screen_height Variablen. Diese beiden Variablen nehmen die Größe des OLED -Bildschirms an. Wir verwenden eine OLED mit Größe 128x64. Und der dritte Parameter ist &Kabel.

Der letzte Parameter ist -1 Dies zeigt an, dass der OLED -Bildschirm keine externe Reset -Taste hat. Wenn wir einen OLED -Bildschirm mit einer Reset -Taste haben, übergeben wir diesen Parameter an den GPIO -Pin. Wenn die RESET -Taste gedrückt wird, zeigt der OLED Text an.

Nächste I2C -Adresse (0x3c) ist definiert, die wir mit dem Arduino i2c erhalten haben Scannercode.

Schließlich wird die Zeichenfolge, die auf dem OLED -Bildschirm angezeigt werden soll.

Jetzt werden wir die Ausgabe auf dem OLED -Bildschirm beobachten.

2: Ausgabe

In der Ausgabe können wir eine Zeichenfolge sehen “LinuxHint.com”Wird auf einem OLED -Bildschirm mit einer Schriftgröße von 2 angezeigt.

Wir haben die I2C OLED -Display -Schnittstelle mit Arduino Nano Board abgeschlossen.

Abschluss

I2C OLED (organische lichtemittierende Diode) ist eine Art von OLED-Anzeige, die mit einem Mikrocontroller oder einem anderen Gerät mit dem I2C-Protokoll kommuniziert. Dieser Artikel behandelte den Code zur Schnittstellen von Arduino Nano mit i2C OLED -Anzeige mit der Arduino -IDE. Mit der angegebenen Methode kann jedes OLED -Display mit Arduino Nano Board miteinander verbunden werden.