Usando un OLED da 0,96 "con l'Arduino

Using a 0.96" OLED with the Arduino

Il display OLED da 0,96 "è uno schermo compatto ed efficiente dal punto di vista energetico che è perfetto per la visualizzazione di dati di testo, grafica e sensore nei progetti Arduino. Questo tutorial ti guiderà attraverso la configurazione e l'utilizzo di un display OLED da 0,96" con un Arduino.


Cosa avrai bisogno

  1. Arduino Board (ad esempio, uno, mega, nano)
  2. Modulo di visualizzazione OLED da 0,96 " (con interfaccia I2C o SPI)
  3. Breadboard e fili jumper
  4. Un computer con l'IDE Arduino installato
  5. Biblioteche: Adafruit SSD1306 e Adafruit GFX Library

Passaggio 1: comprensione del display OLED

Il display OLED da 0,96 "utilizza in genere il driver SSD1306 e supporta la comunicazione I2C o SPI. Più comunemente, opera tramite il protocollo I2C, richiedendo solo due pin di dati (SDA e SCL).

Pinout i2c

Pin oled Funzione Arduino Uno Pin
VCC Alimentazione (3.3V o 5V) 5v
GND Terra GND
SDA Riga di dati A4
SCL Linea dell'orologio A5

Nota: Controlla la scheda tecnica del modulo OLED per confermare il pinout.


Passaggio 2: installazione delle librerie richieste

Per lavorare con il display OLED, sono necessarie le seguenti librerie:

  1. Biblioteca Adafruit SSD1306
  2. Biblioteca Adafruit GFX

Passaggi per installare librerie

  1. Apri l'IDE Arduino.
  2. Vai a Schizzo > Includi la libreria > Gestisci le biblioteche.
  3. Cerca "Adafruit SSD1306" e fai clic su Installare.
  4. Cerca "Adafruit GFX Library" e fai clic su Installare.

Passaggio 3: cablaggio del display OLED

Collega l'OLED all'Arduino come segue:

Pin oled Arduino Pin
VCC 5v
GND GND
SDA A4
SCL A5

Passaggio 4: caricamento del codice

Ecco uno schizzo di esempio per visualizzare testo e grafica sullo schermo OLED:

Codice di esempio: configurazione di base OLED

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels

// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
#define OLED_RESET    -1 // Reset pin not used
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

void setup() {
  // Initialize the display
  if (!display.begin(SSD1306_I2C_ADDRESS, 0x3C)) { // Address 0x3C for most modules
    Serial.println(F("SSD1306 allocation failed"));
    for (;;);
  }

  display.clearDisplay(); // Clear the buffer

  // Display Welcome Message
  display.setTextSize(1);      // Set text size (1 = small)
  display.setTextColor(SSD1306_WHITE); // Set text color
  display.setCursor(0, 10);    // Set cursor position (x, y)
  display.println(F("Hello, OLED!"));
  display.display();           // Display the message
  delay(2000);

  // Draw a rectangle
  display.clearDisplay();
  display.drawRect(10, 10, 50, 30, SSD1306_WHITE); // x, y, width, height, color
  display.display();
  delay(2000);
}

void loop() {
  // Update screen with dynamic content if needed
}

Passaggio 5: esplorare ulteriori funzioni

La libreria GFX Adafruit fornisce una vasta gamma di funzioni per grafica e testo. Ecco alcuni esempi:

1. Visualizzazione del testo

  display.setTextSize(2); // Larger text size
  display.setTextColor(SSD1306_WHITE);
  display.setCursor(0, 0);
  display.println("Arduino");
  display.display();

2. Forme di disegno

  • Rettangolo: display.drawRect(x, y, width, height, color);
  • Cerchio: display.drawCircle(x, y, radius, color);
  • Linea: display.drawLine(x1, y1, x2, y2, color);

3. INVERTIVI COLORI

  display.invertDisplay(true); // Invert colors
  delay(1000);
  display.invertDisplay(false); // Revert colors

Problemi comuni e risoluzione dei problemi

  1. OLED non visualizzato:

    • Assicurarsi che l'indirizzo I2C corretto (0x3C o 0x3D) sia utilizzato nel codice.
    • Controllare il cablaggio e le connessioni.
  2. Errori della libreria:

    • Assicurarsi che siano installate le librerie Adafruit SSD1306 e GFX.
  3. Display tremolante:

    • Utilizzo display.clearDisplay() Solo quando necessario per ridurre al minimo lo sfarfallio.
  4. Pinout errata:

    • Verificare il foglio dati del modulo per connessioni SDA e PIN SCL corrette.

Applicazioni di display OLED

  1. Visualizzazione dei dati del sensore (ad es. Temperatura, Umidità)
  2. Interfacce utente per sistemi incorporati
  3. Feedback visivo per dispositivi IoT
  4. Display grafici per elettronica portatile

Conclusione

Il display OLED 0.96 "è un'aggiunta versatile e visivamente accattivante ai progetti Arduino. Seguendo questa guida, è possibile visualizzare testo, grafica e dati in tempo reale sulla schermata OLED. Sperimenta diverse funzioni e librerie per creare display dinamici e interattivi Per i tuoi progetti!

Lascia un commento

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.