Arduino - LCD I2C
Dans ce tutoriel Arduino LCD I2C, nous apprendrons à connecter un LCD I2C (afficheur à cristaux liquides) à une carte Arduino. Les LCD sont très populaires et largement utilisés dans les projets électroniques pour afficher des informations. Il existe de nombreux types de LCD. Ce tutoriel prend comme exemple le LCD 16x2 (16 colonnes et 2 lignes). Les autres LCD sont similaires.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos de l'écran LCD I2C 16x2
Dans le tutoriel précédent, nous avons appris à utiliser un écran LCD standard. Cependant, le câblage entre Arduino et l'écran LCD standard est compliqué. Par conséquent, le LCD I2C a été créé pour simplifier le câblage. En fait, le LCD I2C est composé d'un écran LCD standard, d'un module I2C et d'un potentiomètre.
Brochage
LCD I2C utilise l'interface I2C, donc il possède 4 broches :
- Broche GND : doit être connectée à GND (0V).
- Broche VCC : l'alimentation pour l'écran LCD, doit être connectée à VCC (5V).
- Broche SDA : signal de données I2C
- Broche SCL : signal d'horloge I2C
Coordonnées LCD
LCD I2C 16x2 comprend 16 colonnes et 2 lignes. Les colonnes et les lignes sont indexées à partir de 0.
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
LCD I2C | Arduino Uno, Nano | Arduino Mega |
---|---|---|
Vin | 5V | 5V |
GND | GND | GND |
SDA | A4 | 20 |
SCL | A5 | 21 |
Comment programmer pour un LCD I2C
Grâce à la bibliothèque LiquidCrystal_I2C, utiliser un LCD est un jeu d'enfant.
- Inclure la bibliothèque :
- Déclarez un objet LiquidCrystal_I2C avec l'adresse I2C, le nombre de colonnes, le nombre de lignes :
- Initialisez l'écran LCD.
- Déplacez le curseur à la position souhaitée (indice_colonne, indice_ligne)
- Imprimez un message sur l'écran LCD.
Il y a encore bien d'autres choses que nous pouvons faire avec les écrans LCD (voir la partie Faire plus avec les LCD).
※ NOTE THAT:
L'adresse I2C de l'écran LCD peut varier selon les fabricants. Dans le code, nous avons utilisé 0x27 qui est spécifié par le fabricant DIYables.
Code Arduino
Étapes rapides
- Naviguez vers l'icône Libraries sur la barre gauche de l'IDE Arduino.
- Recherchez "LiquidCrystal I2C", puis trouvez la bibliothèque LiquidCrystal_I2C de Frank de Brabander
- Cliquez sur le bouton Install pour installer la bibliothèque LiquidCrystal_I2C.
- Copiez le code ci-dessus et ouvrez-le avec l'IDE Arduino
- Cliquez sur le bouton Upload de l'IDE Arduino pour téléverser le code sur Arduino
- Observez le résultat sur l'écran LCD
- Essayez de modifier le texte et la position
Vidéo
Faites plus avec les écrans LCD
Personnage sur mesure
La fonction lcd.print() ne prend en charge que les caractères ASCII. Si vous souhaitez afficher un caractère spécial ou un symbole (par exemple, un cœur, un oiseau en colère), vous devez utiliser le générateur de caractères ci-dessous.
LCD 16x2 peut afficher 32 caractères (2 lignes et 16 colonnes). Chaque caractère est composé de 40 pixels (8 lignes et 5 colonnes).
Le générateur de caractères représente un caractère (40 pixels). Vous devez simplement suivre les étapes suivantes :
Résultat sur l'écran LCD :
Plusieurs personnages personnalisés
Nous pouvons créer jusqu'à 8 caractères personnalisés (indexés de 0 à 7). L'exemple ci-dessous crée et affiche trois caractères.
Résultat sur l'écran LCD :
Résumé : comment utiliser un caractère personnalisé sur un LCD
- Utilisez le générateur de caractères ci-dessus pour créer un code binaire pour le caractère personnalisé.
- Déclarez le code binaire pour le caractère personnalisé (copiez de l'étape précédente)
- Créez un caractère personnalisé et attribuez-le à une valeur d'index (de 0 à 7) dans la fonction setup().
- Imprimez le caractère personnalisé sur l'écran LCD à tout moment, n'importe où (dans la fonction setup() ou loop())
Autres fonctions
Ajoutez les fonctions ci-dessous une par une dans la fonction loop(). Et ajoutez delay(5000) après chaque fonction.
- Écran LCD clair
- Déplacez le curseur dans le coin supérieur gauche de l'écran LCD.
- Déplacez le curseur vers une position (colonne, ligne)
- Afficher le curseur LCD
- Masque le curseur LCD.
- Afficher le curseur clignotant de l'écran LCD.
- Désactive le curseur clignotant de l'écran LCD.
- Et plus sur Référence de la bibliothèque LiquidCrystal
Relevez le défi
Utilisez un écran LCD pour réaliser l'un des projets suivants :
- Envoi de texte depuis un PC (via le moniteur série) et affichage sur un écran LCD. Indice : Consultez Comment envoyer des données depuis un PC vers Arduino
- Affichage de la touche pressée du clavier sur l'écran LCD. Indice : Consultez Arduino - Clavier
Dépannage sur LCD I2C
Si le texte ne s'affiche pas sur l'écran LCD I2C, veuillez vérifier les problèmes suivants :
i. Ajustez la luminosité de l'écran LCD en tournant le potentiomètre situé à l'arrière de l'écran LCD.
ii. Selon les fabricants, l'adresse I2C de l'écran LCD peut être différente. Habituellement, l'adresse I2C par défaut de l'écran LCD est 0x27 ou 0x3F. Essayez ces valeurs une par une. Si vous échouez toujours, exécutez le code ci-dessous pour trouver l'adresse I2C.
Le résultat sur le moniteur série :