Piloter un LCD Avec le module I2C pour Arduino

Dans ce tutoriel nous allons voir comment marche un écran LCD et comment l’utiliser plus facilement avec le module I2C

GeeekPi 2004 LCD Display Module protocole I2C Pris en Charge, Blindage de Module LCD 2004 pour Arduino Uno Raspberry Pi(20 Characters x 4 Lines)
L’écran à cristaux liquides a toujours été un appareil servant de fenêtre dans les interactions homme-machine. Par exemple, la fenêtre d'invite de certains instruments, la boîte d'invite de température et d'humidité, le moniteur d'état en cours d'exécution du périphérique et l'écran d'invite du périphérique de comptage comportent tous des chiffres à l'écran. Les LCD1602, LCD2004 et LCD12864 communs sont fabriqués à l'aide de matériaux à cristaux liquides et communiqués à l'aide du bus I2C. Il s’agit d’un bus série hautes performances avec règles de bus et synchronisation des périphériques haute vitesse ou basse vitesse nécessaire aux systèmes multi-maîtres. Le bus I2C ne comporte que deux lignes de signal bidirectionnelles, une ligne de données série (SDA) et une ligne d'horloge série (SCL). Compatible avec tous les appareils dotés d'interfaces I2C, tels qu'Arduino, Raspberry Pi, Black Beagle, Tinker Board, STM32, Esp32 et plus. Forfait comprend: 1 x LCD2004,1 x 4Pin Jumpwire
GeeekPi 2Pack 2004 LCD Display Module protocole I2C Pris en Charge, Blindage de Module LCD 2004 pour Arduino Uno Raspberry Pi(20 Characters x 4 Lines)
L’écran à cristaux liquides a toujours été un appareil servant de fenêtre dans les interactions homme-machine. Par exemple, la fenêtre d'invite de certains instruments, la boîte d'invite de température et d'humidité, le moniteur d'état en cours d'exécution du périphérique et l'écran d'invite du périphérique de comptage comportent tous des chiffres à l'écran. Les LCD1602, LCD2004 et LCD12864 communs sont fabriqués à l'aide de matériaux à cristaux liquides et communiqués à l'aide du bus I2C. Il s’agit d’un bus série hautes performances avec règles de bus et synchronisation des périphériques haute vitesse ou basse vitesse nécessaire aux systèmes multi-maîtres. Le bus I2C ne comporte que deux lignes de signal bidirectionnelles, une ligne de données série (SDA) et une ligne d'horloge série (SCL). Compatible avec tous les appareils dotés d'interfaces I2C, tels qu'Arduino, Raspberry Pi, Black Beagle, Tinker Board, STM32, Esp32 et plus. Forfait comprend: 2 x LCD2004,2 x 4Pin Jumpwire

Matériel pour piloter un écran LCD

Un écran LCD c’est quoi ?

Un écran LCD (Liquid Crystal Display) ou affichage à cristaux liquides en français est un dispositif qui permet d’afficher des caractères tout en consommant assez peu d’électricité, c’est pourquoi on le retrouve dans de nombreux projets électroniques et sur tous types d’appareils.

Principe de Fonctionnement d’un écran LCD

Dans ce tutoriel nous allons afficher des caractères sur l’écran LCD comme si c’était un tableau : chaque case de ce tableau représente un espace permettant d’afficher un caractère dans l’écran :

Piloter un LCD Avec le module I2C pour Arduino #2

Un module I2C c’est quoi ?

Un I2C (Inter-Integrated Circuit) est un bus informatique.
Conçu par Philips pour les applications de domotique et d’électronique domestique, il permet de relier facilement un microprocesseur et différents circuits tout en réduisant le nombre de lignes nécessaires à seulement deux lignes :

  • SDA (Serial DAta)
  • et SCL (Serial CLock)

Passons maintenant au montage.

Montage du module I2C et de l’écran LCD

Le montage est vraiment très simple et vous pouvez souder le module I2C et l’écran LCD comme ceci :

Piloter un LCD Avec le module I2C pour Arduino #3

Vous pouvez également les relier tout simplement a l’aide d’une Breadboard.

Mise en place de la liaison I2C-Arduino

Sur le schéma ci-dessous, le PIN A5 représente aussi le pin SCL et le pin A4 représente le pin SDA :

Piloter un LCD Avec le module I2C pour Arduino #4

Le montage à faire est le suivant :

Piloter un LCD Avec le module I2C pour Arduino #5

Passons maintenant à la partie programmation

Les fonctions de la bibliothèque Liquid Crystal I2C

Commencez par télécharger la bibliothèque LiquidCrystal_I2C ( Télécharger)

Voyons ensemble les fonctions disponibles dans cette bibliothèque :

  • noBacklight() : désactive le rétro-éclairage
  • backlight() : active le rétro-éclairage
  • print() : affiche une chaîne de caractère à l’écran et déplace le curseur sur la ligne suivante
  • clear() : efface l’écran
  • home() : replace le curseur en haut à gauche (position 0,0)
  • noDisplay() : éteint l’écran (les caractères ne seront pas perdu)
  • display() : allume rapidement l’écran
  • noCursor() : le curseur devient invisible
  • cursor() : le curseur devient visible
  • noBlink() : Le curseur ne clignote pas
  • blink() : le curseur clignote
  • scrollDisplayLeft() : déplace le contenu affiché d’une colonne vers la gauche
  • scrollDisplayRight() : déplace le contenu affiché d’une colonne vers la droite

Passons maintenant au code.

Code pour afficher « Hello World » sur l’écran à cristaux liquides

Voici le code très simple que nous allons utiliser :

#include 
LiquidCrystal_I2C lcd(0x27, 16, 2);// définit le type d'écran lcd pour ma part j'utilise un 16 x 2
void setup() {
lcd.begin();
lcd.backlight();
}

void loop() {
lcd.clear();
lcd.setCursor(0,0); // positionne le curseur à la colonne 1 et à la ligne 2  
lcd.print("Hello World  !  ");
delay(1000);
}

Le résultat est le suivant :

Piloter un LCD Avec le module I2C pour Arduino #6

SunFounder IIC I2C TWI Serial 2004 20x4 LCD Module Shield Compatible with Arduino R3 Mega
Displays characters of 4 rows with 20 characters in each Working voltage: 5V DC; Dimension: 60×99x22 mm IIC/I2C interface; only takes two I/O ports I2C Address: 0x27 or 0x3F Compatible with Arduino R3/MEGA board
XTVTX 3PCS OLED Module 0.91 pouces d'affichage I2C Module d'affichage I2C Pilote d'écran I2C OLED DC 3.3V ~ 5V (couleur d'affichage blanche)
Écran à économie d'énergie : l'écran oled I2C fonctionne mieux que l'écran LCD traditionnel et avec une consommation plus faible, l'IIC (communications I2C) simplifie les connexions ; Veuillez noter que ce module d'affichage I2C OLED est livré sans en-têtes de broche Plus de détails : utilisation compatible avec Arduino, ESP8266, ESP32, STM32, etc. ; Puissance de 3,35 v ; Température de fonctionnement : -40 - 85  ; Résolution : 128 x 32 Bonne compatibilité : ce module d'affichage oled i2c est compatible avec Raspberry Pi 4B/3B+/3B/2B/Zero, compatible avec Arduino, également compatible avec ESP8266, ESP32, STM32, etc. Qu'obtiendrez-vous : il y a un module d'affichage OLED de 5 pièces avec une couleur d'affichage classique, auto-éclairé et sans rétro-éclairage Grâce à la technologie OLED innovante, l'écran de 0,91 pouce présente un fort contraste. De plus, ce type d'écran a de meilleures performances que les écrans LCD traditionnels, et comme les pixels émettent de la lumière par eux-mêmes et ne nécessitent pas de rétroéclairage, ils consomment moins d'énergie.
Arduino lcd I2C

Ecran lcd arduino

Categories: Arduino