Les afficheurs Lcd 1602, 1604 et 2004 expliqués par le professeur Brisen

Le professeur Brisen nous emmène dans une exploration pédagogique pour découvrir les écrans LCD 1602, 1604 et 2004.

Introduction :

Afficheur LCD1602 avec contrôleur HD44780 pour Arduino
Version LCD 1602 I2C en boitier Rail Din (disponible ici)

Professeur Brisen : Bonjour Apprentius, bienvenue dans le monde fascinant des écrans LCD (Liquid Crystal Display) 1602, 1604 et 2004. Ces composants électroniques sont largement utilisés dans le domaine de l’électronique pour afficher des informations de manière claire et lisible. Aujourd’hui, nous allons plonger dans leur fonctionnement, leur utilité et comment les intégrer dans vos projets. As-tu entendu parler de ces composants auparavant ?

Apprentius : Bonjour Professeur Brisen, oui, j’en ai entendu parler, mais je ne sais pas exactement à quoi ils servent ni comment les utiliser.

Ecran afficheur LCD 1602

Le LCD 1602 est un module d’affiche de 16 caractères sur 2 lignes (16×2). Le LCD 1604 dispose de 16 caractères sur 4 lignes et le 2004 est composé de 20 caractères sur 4 lignes.

À quoi ça sert :

Professeur Brisen : Très bien, commençons, ces écrans LCD 1602, 1604 et 2004, ou Liquid Crystal Display, sont des dispositifs d’affichage utilisés en électronique qui permettent d’afficher du texte ou des caractères alphanumériques. Ils sont souvent utilisés dans des projets électroniques, tels que des compteurs, des systèmes de surveillance, ou même des gadgets interactifs. Leur capacité à afficher des informations de manière lisible en fait des choix populaires pour les projets DIY (Do It Yourself) et l’apprentissage de l’électronique.

Apprentius, peux-tu penser à des endroits où tu as vu des écrans de ce type ?

Apprentius : Hmm, je suppose que je les ai vus sur des horloges, des thermomètres, et peut-être sur certains projets électroniques.

Comment les utiliser :

Professeur Brisen : Exactement ! Ces écrans sont fréquemment utilisés dans de tels dispositifs. Maintenant, passons à la façon de les utiliser.

Pour afficher des informations sur ces écrans LCD, tu auras besoin de relier un certain nombre de leurs broches à une plaque de prototypage (breadboard) et à un microcontrôleur Arduino ou un Raspberry.

Breadboard
Raspberry
C'est une carte Arduino Uno
Carte Arduino Uno

Les broches comprennent des connexions pour l’alimentation, la masse, et les lignes de données.

As-tu déjà utilisé un Arduino ou un Rasberry, Apprentius ?

Apprentius : Oui, j’ai eu une introduction rapide à l’Arduino en cours, mais je n’ai pas encore travaillé sur des projets concrets.

Comment les brancher :

Professeur Brisen : Parfait. Pour connecter l’écran LCD 1602, tu auras besoin de relier les broches d’alimentation, de masse, et les lignes de données à l’Arduino. (2 possibilités : protocole parallèle et protocole BUS).

Montage sur une Breadboard d’un LCD1602 avec une carte Arduino

Le branchement du LCD1602 en montage parallèle est déconseillé car il nécessite de relier 6 fils entre le LCD et l’Arduino et il va “gaspiller” 6 entrées sur la carte Arduino.

Les écrans LCD peuvent aussi communiquer avec l’Arduino à l’aide d’un module adaptateur I2C via un protocole : le bus maitre esclave I2C. Ce bus peut également servir à relier d’autres dispositifs, en utilisant toujours les 2 memes fils.

L’ajout d’un module I2C simplifie les choses en utilisant toujours un fil +5v ou +3,3v, un fil 0v (GND) mais seulement deux fils pour la communication SDA (liaison données) et SCL (signal d’horloge).

C'est un adaptateur I2C pour écran LCD 1602 et 2004 compatible Arduino et Raspberry
Module adaptateur I2C / LCD

Professeur Brisen : As-tu déjà entendu parler de l’I2C ?

Apprentius : Oui, nous avons mentionné I2C lors de notre leçon sur les communications série. C’est plus simple que d’utiliser le protocole parallèle qui nécessite plus de fils et davantage de d’entrées sorties sur la carte Arduino pour la communication.

Professeur Brisen : Commence par vérifier si c’est un module 3,3v ou 5v et assure toi de connecter correctement les broches d’alimentation (VCC et GND) pour fournir la tension nécessaire à l’écran.

Branches les broches de communication SDA (A4 pin 18), SCL (A5 pin 19) entre l’écran et le microcontrôleur.

Branchement d’un LCD1602 avec un adaptateur I2C sur une carte Arduino

Apprentius : professeur Brisen, est ce qu’il est possible de relier 2 afficheurs LCD 1602 sur la même carte Arduino ?

Professeur Brisen : Bien sur Apprentius, l’avantage du bus I2C est de pouvoir connecter jusqu’à 128 périphériques tout confondus. Pour cela il y a des ponts de soudures à réaliser sur le module adaptateur qui vont permettre de changer l’adresse du module sur le bus (voir photos ci dessous).

Choix des adresses du module I2C

Apprentius : Si j’ai bien compris professeur Brisen, cette adresse me servira dans le code à différencier les 2 afficheurs LCD 1602 ?

Comment afficher du texte sur le LCD :

Professeur Brisen : Exactement Apprentius, et une fois que tu auras raccordé l’écran au microcontrôleur, tu devras écrire un code pour lui dire ce qu’il doit afficher. Tu peux lui envoyer du texte, des nombres, et même des symboles spéciaux. Pour les amateurs de DIY, c’est une chance de personnaliser l’affichage selon leurs besoins.

Tu vas avoir besoin de “l’IDE Arduino”, c’est un programme conçu pour écrire et téléverser du code dans une carte Arduino téléchargeable ICI.

Ci dessous : voici un code minimaliste pour afficher “Hello World” sur un LCD1602.

/*         Affichage Hello world           
*/
//      Librairies à inclure
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

//      Adressage module I2C
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
 lcd.init(); // initialisation de l'afficheur
}
void loop()
{
 lcd.backlight();
 // Envoi du message
 lcd.setCursor(2, 0);
 lcd.print("Hello World");
 lcd.setCursor(2,1);
 lcd.print("www.Anobis.fr");
}
Code Arduino “Hello World”

Attention par défaut sur les modules I2C le réglage du contraste (situé dessous) est à zero. il faudra l’ajuster pour obtenir un affichage lisible des caractères.

Réglage du contraste du module I2C

Penses-tu que tu pourrais gérer cela, Apprentius ?

Apprentius : Eh bien, je ne suis pas encore expert en programmation, mais je pense que je pourrais essayer avec votre aide, Professeur Brisen.

Professeur Brisen : Penses aussi à ajuster le potentiomètre de réglage de contraste situé sous le module I2C pour obtenir un affichage lisible des caractères.

Apprentius : Compris, Professeur Brisen. Je vais vérifier la tension du module (3,3V ou 5V) et je n’oublierai pas d’ajuster le contraste.

Avec quoi l’utiliser :

Professeur Brisen : Les écrans LCD sont souvent utilisés avec des microcontrôleurs tels que l’Arduino, Raspberry Pi, ou d’autres plates-formes similaires. Ils sont sont idéaux pour les projets électroniques DIY, comme des horloges personnalisées, des stations météo, ou même des jeux simples.

Afficheur LCD1602 avec contrôleur HD44780 pour Arduino
Version LCD 1602 I2C en boitier Rail Din (disponible ici)
C'est une carte Arduino Uno
Arduino
Raspberry

Apprentius : Merci, Professeur Brisen, pour ces informations. J’ai hâte de réaliser un projet diy avec les écrans LCD et une carte Arduino.

Conclusion :

Professeur Brisen : Les écrans LCD 1602, 1604 et 2004 sont des outils puissants pour visualiser des données dans le monde de l’électronique. En apprenant à les utiliser, tu ouvriras la porte à une variété infinie de projets créatifs.

Utiliser ces écrans dans des projets DIY te permettra de pratiquer et de renforcer tes compétences en programmation. Et n’oublie pas, tu peux les intégrer dans des projets avec des capteurs, des modules GPS, ou même créer tes propres gadgets DIY.

Alors, Apprentius, prêt à plonger dans le monde des écrans LCD et à explorer toutes les possibilités qu’ils offrent ?

Apprentius : Absolument, je ne suis pas encore expert en programmation, mais une horloge personnalisée ou une station météo semble passionnant à réaliser, surtout avec cette touche DIY pour la personnalisation. Merci Professeur Brisen.

Les bases fondamentales de l’électronique
Prise en main d’une box Arduino avec le professeur Brisen