TUTO - L'écran LCD I2C -16x2 avec Arduino : Un guide complet pour débutants
- Maxime Prudhon
- 22 févr.
- 4 min de lecture
L'écran LCD I2C 16x2 est l'un des composants les plus utilisés dans les projets Arduino. Il permet d'afficher des informations de manière claire et lisible, idéal pour des projets comme des stations météo, des systèmes de contrôle ou des affichages d'informations en temps réel.

Pourquoi utiliser un écran LCD I2C avec Arduino ?
L'écran LCD I2C16x2 est un écran simple mais puissant avec un arduino. Il dispose de 2 lignes et 16 caractères, parfait pour afficher des données comme la température, l'humidité, l'heure, ou d'autres informations pertinentes dans vos projets. L'interface I2C de certains modèles simplifie encore l'utilisation en réduisant le nombre de connexions nécessaires. Dans ce tuto nous allons étudier un écran LCD qui a l'interface I2C intégrée.
Matériel nécessaire pour utiliser l'écran LCD I2C avec un Arduino
Avant de commencer, voici ce dont vous avez besoin :
1 x Écran LCD 16x2 avec module I2C
1 x Arduino Uno (ou toute autre carte compatible)
Fils de connexion
Breadboard (plaque de prototypage)
Connexion de l'écran LCD I2C à un Arduino
Si vous utilisez un module I2C, la connexion devient encore plus simple, car il n'y a que 4 fils à connecter :
VCC (Alimentation) → 5V de l'Arduino
GND (Masse) → GND de l'Arduino
SDA (Données) → A4 (pour Arduino Uno)
SCL (Horloge) → A5 (pour Arduino Uno)
Schéma de connexion avec module I2C :
LCD 16x2 --- Arduino
VCC ---> 5V
GND ---> GND
SDA ---> SDA
SCL ---> SCL
Code pour afficher des informations sur l'écran LCD I2C
Une fois les connexions établies, vous pouvez facilement afficher des informations en utilisant la bibliothèque LiquidCrystal_I2C dans l'IDE Arduino.
Voici un exemple simple :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // Adresse I2C et taille de l'écran
void setup() {
lcd.begin(16, 2); // Initialisation de l'écran
lcd.print("Bienvenue!"); // Affichage d'un message
}
void loop() {
lcd.setCursor(0, 1); // Positionner le curseur à la 2ème ligne
lcd.print("Arduino + LCD"); // Affichage d'une autre ligne de texte
delay(2000); // Attente de 2 secondes
lcd.clear(); // Effacer l'écran
delay(500); // Attente de 0,5 seconde
}
Ce code va afficher "Bienvenue!" à l'écran, puis passer à "Arduino + LCD" après quelques secondes.
Créer une Station Météo Arduino avec DHT11 et un Écran LCD I2C 16x2
Si vous avez toujours voulu créer votre propre station météo, mesurer la température et l'humidité en temps réel avec un capteur DHT11 et afficher les résultats sur un écran LCD I2C16x2 avec Arduino, vous êtes au bon endroit ! Dans ce tutoriel, nous allons vous guider pas à pas pour réaliser ce projet simple et fonctionnel.
Matériel nécessaire :
1 Arduino Uno (ou toute autre carte Arduino compatible)
1 Capteur DHT11 (pour mesurer la température et l'humidité)
1 Écran LCD 16x2 avec module I2C (pour afficher les données)
Fils de connexion
Breadboard (plaque de prototypage)
Schéma de câblage :
Voici comment connecter le DHT11 et l'écran LCD 16x2 à votre Arduino :
DHT11 :
VCC → 5V de l'Arduino
GND → GND de l'Arduino
Data → Pin 7 de l'Arduino (ou un autre pin digital)
Écran LCD 16x2 avec I2C :
VCC → 5V de l'Arduino
GND → GND de l'Arduino
SDA → SDA
SCL → SCL
Code Arduino pour la Station Météo :
Voici le code complet à copier dans l'IDE Arduino pour créer votre station météo :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
// Définition du type de capteur DHT et du pin de données
#define DHTPIN 7 // Pin où est connecté le capteur DHT11
#define DHTTYPE DHT11 // Utilisation du capteur DHT11
DHT dht(DHTPIN, DHTTYPE); // Initialisation du capteur DHT
LiquidCrystal_I2C lcd(0x27, 16, 2); // Adresse I2C pour l'écran LCD, 16x2 caractères
void setup() {
lcd.begin(16, 2); // Initialisation de l'écran LCD
lcd.backlight(); // Allumer le rétroéclairage
dht.begin(); // Initialisation du capteur DHT11
lcd.print("Station Météo");
delay(2000); // Afficher pendant 2 secondes
}
void loop() {
// Lire l'humidité et la température du capteur DHT11
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
// Vérifier si la lecture échoue
if (isnan(humidity) || isnan(temperature)) {
lcd.clear();
lcd.print("Erreur capteur");
return;
}
// Afficher les résultats sur l'écran LCD
lcd.clear(); // Effacer l'écran
lcd.setCursor(0, 0); // Positionner le curseur sur la première ligne
lcd.print("Temp: ");
lcd.print(temperature); // Afficher la température
lcd.print(" C");
lcd.setCursor(0, 1); // Positionner le curseur sur la deuxième ligne
lcd.print("Hum: ");
lcd.print(humidity); // Afficher l'humidité
lcd.print(" %");
delay(2000); // Rafraîchir les données toutes les 2 secondes
}
Explication du code :
Bibliothèques : Nous utilisons les bibliothèques Wire et LiquidCrystal_I2C pour l'écran LCD et DHT pour le capteur de température et d'humidité.
Initialisation : Le capteur DHT11 et l'écran LCD sont initialisés dans la fonction setup().
Lecture des données : Dans la boucle loop(), nous lisons les valeurs de température et d'humidité du DHT11, puis nous les affichons sur l'écran LCD.
Affichage : L'écran LCD affiche la température sur la première ligne et l'humidité sur la deuxième ligne. Les données sont rafraîchies toutes les 2 secondes.
Quelques idées pour aller plus loin :
Une fois que vous avez créé cette station météo de base, vous pouvez améliorer votre projet de différentes manières :
Envoyer les données vers Internet : Connectez votre projet à un serveur comme ThingSpeak pour afficher les données à distance.
Ajouter plus de capteurs : Intégrez d'autres capteurs, comme des capteurs de pression ou de luminosité, pour créer une station météo encore plus complète.
Enregistrement des données : Utilisez une carte SD pour enregistrer les données et les analyser plus tard.
Conclusion
Ce projet avec Arduino est une excellente manière d'apprendre à travailler avec des capteurs et des écrans LCD tout en construisant une station météo fonctionnelle. Si vous êtes prêt à aller plus loin et à maîtriser d'autres aspects de l'Arduino, comme la connexion Wi-Fi, la création de projets IoT, et bien plus, rejoignez ma formation complète Arduino Wi-Fi !
Dans cette formation, vous aurez un accès illimité à un support personnalisé pour vous accompagner dans vos projets, avec des visioconférences, des réponses rapides à vos questions et un suivi de qualité pour vous aider à aller plus loin dans vos projets Arduino.
Comments