Comment 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 2-Pack I2C 1602 LCD-Anzeigemodul 16X2 Charakter Serial Blue Backlight LCD-Modul für Raspberry Pi Arduino STM32 Heimwerkerprojekt Nanopi BPI Tinker-Board Elektrische IoT
Utilisez le protocole i2c pour réduire l’occupation des ports d’E / S, ce qui facilite l’ajout au projet, et moins de câblage est plus beau. Couramment utilisé dans: Internet des objets, projet de bricolage, animation à la maison, smartbuilding, maker’s DIY project Compatible avec toutes les cartes de développement actuelles, telles que Arduino, Raspberry Pi, Tinkerboard, Nano Pi, Banana Pi, stm32 etc. Avec un potentiomètre utilisé pour régler le rétro-éclairage (couleur: bleu) et le contraste. Wiki:http://wiki.52pi.com/index.php?title=1602_Serial_LCD_Module_Display_SKU:Z-0234
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

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 :

Comment 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 :

Comment 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 :

Comment piloter un LCD Avec le module I2C pour Arduino ? #4

Le montage à faire est le suivant :

Comment 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 :

Comment piloter un LCD Avec le module I2C pour Arduino ? #6

Freenove I2C LCD 1602 Module (2 Pack), New Type IIC TWI Serial 16×2 Display, Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266
LCD 1602 -> Can display 2 lines of characters, 16 for each. New model -> Integrate the conversion circuit on the screen. I2C address -> 0x3F for 8574AT chip; 0x27 for 8574T and blank chip. (Refer to « About_I2C_Address.pdf » in downloaded file for details.) Demo project -> For mainstream models of Arduino / Raspberry Pi / Raspberry Pi Pico / ESP32 / ESP8266. Tutorial and code -> The download link can be found on the product box. (No paper tutorial.)
GeeekPi OLED Display Module I2C IIC 128X64 Pixel 0.96 Inch Display Module Yellow Blue Two-Color Display Compatible with Raspberry Pi Arduino 51 Series MCU STM32 R3 and Mega(2Pack)
Fully compatible with Raspberry Pi, Arduino, 51 series, MSP430 Series, STM32/2, CSR IC, etc. High resoluton: 128*64 pixels(approx) Support I2c IIC communication Protocol,the IIC address can be changed,it is convenient to use with different machines. Pin Definitions: GND, VCC, SCL, SDA;Pins: 4 pins Package includes:2 x 0.96 inch OLED Display kits (Yellow Blue Two-Color),8 x Male to Female Dopunt Wire, 8 x Female to Female Dopunt Wire Technology support: wiki.52pi.com/index.php?title=S-0018
Arduino lcd I2C

Ecran lcd arduino

Catégories : ArduinoProgrammer un Arduino