Note
Bonjour, bienvenue dans la communauté SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts sur Facebook ! Plongez au cœur de Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.
Pourquoi nous rejoindre ?
Support d’experts : Résolvez les problèmes après-vente et les défis techniques grâce à l’aide de notre communauté et de notre équipe.
Apprendre & Partager : Échangez des astuces et des tutoriels pour améliorer vos compétences.
Aperçus exclusifs : Accédez en avant-première aux annonces de nouveaux produits et aux avant-goûts.
Réductions spéciales : Profitez de réductions exclusives sur nos nouveaux produits.
Promotions festives et tirages au sort : Participez à des tirages au sort et des promotions de vacances.
👉 Prêt à explorer et créer avec nous ? Cliquez sur [Ici] et rejoignez-nous dès aujourd’hui !
OLED
Vue d’ensemble
Dans cette leçon, vous allez découvrir les écrans OLED utilisant le pilote SSD1306. Les écrans OLED (Organic Light-Emitting Diodes) sont largement utilisés dans divers appareils électroniques tels que les montres connectées, les téléphones mobiles et même les téléviseurs. Le SSD1306 est un pilote CMOS OLED/PLED à puce unique avec contrôleur pour un système d’affichage graphique à matrice de points à diodes électroluminescentes organiques/polymères. Il offre une sortie visuelle nette et claire grâce aux diodes à base de matériaux organiques qui émettent de la lumière lorsqu’un courant électrique les traverse.
Dans le code fourni, un écran OLED est interfacé avec une carte Arduino via le protocole I2C. Le code utilise la bibliothèque Adafruit SSD1306 pour contrôler l’affichage. Le programme couvre diverses fonctionnalités telles que :
Affichage de texte : « Hello world! » est affiché à l’écran.
Texte inversé : Le texte « Hello world! » est affiché dans un schéma de couleurs inversé.
Taille de police : Le texte « Hello! » est affiché avec une taille de police augmentée.
Affichage numérique : Les chiffres 123456789 sont affichés.
Caractères ASCII : Un ensemble de caractères ASCII est affiché.
Défilement : Le texte défile horizontalement sur l’écran.
Affichage de bitmap : Une image bitmap prédéfinie est affichée sur l’écran OLED.
Cet écran OLED peut être utilisé dans une multitude d’applications, y compris les horloges numériques, les mini consoles de jeux, les affichages d’informations, etc. Il offre un excellent moyen de fournir une interface utilisateur dans des appareils compacts et portables.
Composants requis
Pour ce projet, nous avons besoin des composants suivants.
Il est certainement pratique d’acheter un kit complet, voici le lien :
Nom |
ARTICLES DANS CE KIT |
LIEN |
---|---|---|
Elite Explorer Kit |
300+ |
Vous pouvez également les acheter séparément à partir des liens ci-dessous.
INTRODUCTION DES COMPOSANTS |
LIEN D’ACHAT |
---|---|
- |
|
Câblage
Schéma de câblage
Code
Note
Vous pouvez ouvrir le fichier
15-oled.ino
sous le cheminelite-explorer-kit-main\basic_project\15-oled
directement.Ou copiez ce code dans Arduino IDE.
Note
Pour installer la bibliothèque, utilisez le gestionnaire de bibliothèques Arduino et recherchez « Adafruit SSD1306 » et « Adafruit GFX » et installez-les.
Analyse du code
Inclusion des bibliothèques et définitions initiales : Les bibliothèques nécessaires pour l’interfaçage avec l’OLED sont incluses. Ensuite, des définitions concernant les dimensions de l’OLED et l’adresse I2C sont fournies.
Adafruit SSD1306 : Cette bibliothèque est conçue pour faciliter l’interfaçage avec l’affichage OLED SSD1306. Elle fournit des méthodes pour initialiser l’affichage, contrôler ses paramètres et afficher du contenu.
Adafruit GFX Library : Il s’agit d’une bibliothèque graphique de base pour afficher du texte, produire des couleurs, dessiner des formes, etc., sur divers écrans, y compris les OLED.
Note
Pour installer la bibliothèque, utilisez le gestionnaire de bibliothèques Arduino et recherchez « Adafruit SSD1306 » et « Adafruit GFX » et installez-les.
#include <SPI.h> #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #define SCREEN_WIDTH 128 // Largeur de l'écran OLED en pixels #define SCREEN_HEIGHT 64 // Hauteur de l'écran OLED en pixels #define OLED_RESET -1 #define SCREEN_ADDRESS 0x3C
Données bitmap : Les données bitmap pour afficher une icône personnalisée sur l’écran OLED. Ces données représentent une image dans un format que l’OLED peut interpréter.
Vous pouvez utiliser cet outil en ligne appelé image2cpp qui peut transformer votre image en un tableau.
Le mot-clé
PROGMEM
indique que le tableau est stocké dans la mémoire programme du microcontrôleur Arduino. Stocker les données dans la mémoire programme (PROGMEM) au lieu de la RAM peut être utile pour de grandes quantités de données, qui prendraient autrement trop de place dans la RAM.static const unsigned char PROGMEM sunfounderIcon[] = {...};
Fonction Setup (initialisation et affichage) : La fonction
setup()
initialise l’OLED et affiche une série de motifs, de textes et d’animations.void setup() { ... // Initialisation de la communication série et de l'objet OLED ... // Affichage de divers textes, chiffres et animations }