Utilisation d'un OLED de 0,96 "avec l'Arduino

Using a 0.96" OLED with the Arduino

L'affichage OLED de 0,96 "est un écran compact et économe en énergie qui est parfait pour afficher des données de texte, de graphiques et de capteurs dans des projets Arduino. Ce didacticiel vous guidera à travers la configuration et l'utilisation d'un écran OLED de 0,96" avec un Arduino.


Ce dont vous aurez besoin

  1. Conseil d'administration d'Arduino (par exemple, uno, mega, nano)
  2. Module d'affichage OLED 0,96 " (avec I2C ou interface SPI)
  3. Fils de planche à pain et de cavalier
  4. Un ordinateur avec l'ide Arduino installé
  5. Bibliothèques: Adafruit SSD1306 et bibliothèque Adafruit GFX

Étape 1: Comprendre l'affichage OLED

L'affichage OLED de 0,96 "utilise généralement le pilote SSD1306 et prend en charge la communication I2C ou SPI. Le plus souvent, il fonctionne via le protocole I2C, ne nécessitant que deux broches de données (SDA et SCL).

Pinout I2C

Broche Fonction Épingle arduino uno
VCC Alimentation (3,3 V ou 5V) 5V
GND Sol GND
SDA Ligne de données A4
SCL Ligne d'horloge A5

Note: Vérifiez la fiche technique de votre module OLED pour confirmer le Pinout.


Étape 2: Installation des bibliothèques requises

Pour travailler avec l'écran OLED, vous avez besoin des bibliothèques suivantes:

  1. Bibliothèque Adafruit SSD1306
  2. Bibliothèque Adafruit GFX

Étapes pour installer les bibliothèques

  1. Ouvrez l'ide Arduino.
  2. Aller à Esquisser > Inclure la bibliothèque > Gérer les bibliothèques.
  3. Recherchez "Adafruit SSD1306" et cliquez Installer.
  4. Recherchez "Adafruit GFX Library" et cliquez Installer.

Étape 3: Câblage de l'écran OLED

Connectez l'OLED à l'Arduino comme suit:

Broche Épingle arduino
VCC 5V
GND GND
SDA A4
SCL A5

Étape 4: Téléchargement du code

Voici un exemple de croquis pour afficher du texte et des graphiques sur l'écran OLED:

Exemple de code: configuration OLED de base

#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
}

Étape 5: Explorer des fonctions supplémentaires

La bibliothèque Adafruit GFX fournit une large gamme de fonctions pour les graphiques et le texte. Voici quelques exemples:

1. Affichage du texte

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

2. Dessin Formes

  • Rectangle: display.drawRect(x, y, width, height, color);
  • Cercle: display.drawCircle(x, y, radius, color);
  • Doubler: display.drawLine(x1, y1, x2, y2, color);

3. Couleurs inversées

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

Problèmes communs et dépannage

  1. Oled ne s'affiche pas:

    • Assurez-vous que l'adresse I2C correcte (0x3c ou 0x3d) est utilisée dans le code.
    • Vérifiez le câblage et les connexions.
  2. Erreurs de bibliothèque:

    • Assurez-vous que les bibliothèques Adafruit SSD1306 et GFX sont installées.
  3. Affichage scintillant:

    • Utiliser display.clearDisplay() uniquement lorsque cela est nécessaire pour minimiser le scintillement.
  4. Pinout incorrect:

    • Vérifiez la fiche technique du module pour les connexions SDA et SCL correctes.

Applications des écrans OLED

  1. Affichage des données du capteur (par exemple, température, humidité)
  2. Interfaces utilisateur pour les systèmes intégrés
  3. Rétroaction visuelle pour les appareils IoT
  4. Affichages graphiques pour l'électronique portable

Conclusion

L'affichage OLED de 0,96 "est un ajout polyvalent et visuellement attrayant aux projets Arduino. Pour vos projets!

Laissez un commentaire

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.