top of page

TUTO - L'écran LCD I2C -16x2 avec Arduino : Un guide complet pour débutants

  • Photo du rédacteur: Maxime Prudhon
    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.


Ecran LCD 16x02 pour un thermomètre
Ecran LCD I2C16x02 pour un thermomètre

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 :

  1. DHT11 :

    • VCC → 5V de l'Arduino

    • GND → GND de l'Arduino

    • Data → Pin 7 de l'Arduino (ou un autre pin digital)

  2. É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.




 
 
 

Posts récents

Voir tout

Comments


Notre Newsletter 

Abonnez-vous et recevez directement dans votre boîte mail des projets DIY Arduino, des astuces et des conseils pratiques ! 

Merci pour votre envoi !

bottom of page