Description
LCD signifie Liquid Crystal Display (affichage à cristaux liquides). Il s’agit d’un écran basique de 16 caractères sur 2 lignes avec rétroéclairage jaune. Il utilise le chipset d’interface parallèle HD44780 extrêmement courant. Vous aurez besoin de 7 broches d’E/S générales (si vous l’utilisez en mode 4 bits) pour vous connecter à cet écran LCD. Comprend un rétroéclairage LED.
Caractéristiques:
- Module d’affichage LCD avec rétroéclairage jaune
- TAILLE : 16×2 (2 rangées et 16 caractères par rangée)
- Peut afficher 2 lignes X 16 caractères
- Fonctionne avec 5 V CC
- Grand angle de vision et contraste élevé
- Contrôleur LCD équivalent à la norme industrielle HD44780 intégré
- Couramment utilisé dans : Projet étudiant, Collage, photocopieurs, télécopieurs, imprimantes laser, équipements de test industriels, équipements réseau tels que routeurs et périphériques de stockage
- Type LCM : Caractères
Comment démarrer avec un écran LCD 16×2
Introduction
L’écran LCD (Liquid Crystal Display) est un module d’affichage électronique et trouve une large gamme d’applications. Un écran LCD 16×2 est un module très basique et est très utilisé dans divers appareils et circuits. Ces modules sont préférés aux sept segments et autres LED multi-segments . Les raisons en sont les suivantes : les écrans LCD sont économiques ; facilement programmables ; n’ont aucune limitation d’affichage de caractères spéciaux et même personnalisés (contrairement aux sept segments), d’animations, etc. Un écran LCD 16×2 signifie qu’il peut afficher 16 caractères par ligne et qu’il y a 2 de ces lignes. Dans cet écran LCD, chaque caractère est affiché dans une matrice de pixels 5 × 7. Cet écran LCD possède deux registres, à savoir Commande et Données. Le registre de commande stocke les instructions de commande données sur l’écran LCD. Une commande est une instruction donnée à l’écran LCD pour effectuer une tâche prédéfinie comme l’initialiser, effacer son écran, définir la position du curseur, contrôler l’affichage, etc. écran LCD. Les données sont la valeur ASCII du caractère à afficher sur l’écran LCD.
aperçu
Dans ce tutoriel, vous apprendrez à utiliser un écran LCD 16×2 (et 20×4) avec Arduino uno. Vous apprendrez également à afficher les données en direct à partir d’un capteur. Dans notre cas, nous allons utiliser un capteur de température et d’humidité DHT22.
Pièces nécessaires :
- Arduino uno
- Écran LCD 16×2
- Capteur de température et d’humidité DHT22
- fils de liaison
- Résistance de 10k Ohm
Avant de commencer à télécharger des croquis Arduino, nous devons effectuer la connexion matérielle suivante.
Les connexions sont faciles, voir l’image ci-dessus avec le schéma du circuit de la breadboard.
Bibliothèque Arduino et exemple de code
Après avoir réalisé le circuit comme indiqué ci-dessus, nous allons télécharger la bibliothèque DHT d’Adafruits depuis leur page github. Pour télécharger, cliquez sur le bouton TÉLÉCHARGEMENTS dans le coin supérieur droit. Renommez le dossier non compressé DHT et assurez-vous qu’il contient le fichier dht.cpp et d’autres. Faites ensuite glisser le dossier DHT dans le dossier arduinosketchfolder /libraries/ . Vous devrez peut-être créer ce sous-dossier de bibliothèques s’il n’existe pas. Redémarrez l’IDE. MPORTANT : à partir de la version 1.3.0 de la bibliothèque DHT, vous devrez également installer la bibliothèque Adafruit_Sensor , qui est disponible à partir du gestionnaire de bibliothèque Arduino. Une autre bibliothèque que nous utiliserons est fournie avec n’importe quel IDE Arduino, quelle que soit la version que vous possédez. Après avoir installé les bibliothèques, il est temps de tester notre écran LCD et notre capteur de température DHT22.
Test de notre capteur de température DHT22
si vous avez réalisé le circuit correctement comme dans le schéma, téléchargez ce croquis sur votre carte Arduino UNO et ouvrez votre moniteur série à une vitesse de transmission égale à 9600.
#include <DHT.h> #define DHTPIN 6 // à quelle broche nous sommes connectés // Décommentez le type que vous utilisez ! //#define DHTTYPE DHT11 // DHT 11 #define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301) // Connectez la broche 1 (à gauche) du capteur au +5V // Connectez la broche 2 du capteur à votre DHTPIN // Connectez la broche 4 (à droite) du capteur à la MASSE // Connectez une résistance de 10K de la broche 2 (données) à la broche 1 (alimentation) du capteur DHT dht(DHTPIN, DHTTYPE); flotteur tF; flotteur dP; flotteur dPF; configuration vide() { Série.begin(9600); Série.println("Test DHTxx !"); dht.début(); } boucle vide() { // La lecture de la température ou de l’humidité prend environ 250 millisecondes ! // Les lectures du capteur peuvent également être « anciennes » de 2 secondes (c'est un capteur très lent) float h = dht.readHumidity(); float t = dht.readTemperature(); // vérifiez si les retours sont valides, s'ils sont NaN (pas un nombre), alors quelque chose s'est mal passé ! si (isnan(t) || isnan(h)) { Serial.println("Échec de la lecture à partir de DHT"); } autre { Serial.print("Humidité : "); Série.print(h); Série.print(" %\t"); Serial.print("Température : "); // Série.print(t); // Série.print(" *C "); tF=((t*9)/5)+32; Série.print(tF); Série.print(" *F "); Série.print(" \t"); Serial.print("Point de rosée : "); // Série.print(dewPointFast(t, h)); // Série.print(" *C "); dP=(pointdewrapide(t, h)); dPF=((dP*9)/5)+32; Série.print(dPF); Série.print(" *F"); Série.print(" \t"); Serial.print("Indice de chaleur : "); Série.print(heatIndex(tF,h)); Série.println(" *F"); } } // delta max = 0,6544 par rapport à dewPoint() // 6,9 x plus rapide que dewPoint() // référence : http://en.wikipedia.org/wiki/Dew_point double dewPointFast(double Celsius, double humidité) { double a = 17,271; double b = 237,7; double température = (a * celsius) / (b + celsius) + log(humidité * 0,01); double Td = (b * température) / (a - température); retour Td; } double heatIndex(double températureF, double humidité) { double c1 = -42,38, c2 = 2,049, c3 = 10,14, c4 = -0,2248, c5= -6,838e-3, c6=-5,482e-2, c7=1,228e-3, c8=8,528e-4, c9=-1,99e-6 ; double T = températureF; double R = humidité ; double A = (( c5 * T) + c2) * T + c1; double B = ((c7 * T) + c4) * T + c3; double C = ((c9 * T) + c8) * T + c6; double valeur résiduelle = (C * R + B) * R + A; retourner le camping-car; }
Votre moniteur série doit afficher la température et l’humidité de la pièce dans laquelle vous vous trouvez (si vous êtes dans une pièce comme moi, vous pouvez également sortir pour voir si le DHT22 vous affichera une valeur différente). Les valeurs sont présentées à la fois en degrés Celsius et en degrés Fahrenheit. La valeur du point de chaleur est la température que nous ressentons tandis que la température est la lecture réelle du thermomètre.
Test de notre écran LCD 16×2
Avant de télécharger et de téléverser le croquis suivant suivant , vous devez vous familiariser avec les fonctions de base utilisées dans ce croquis. J’en ai expliqué trois, mais il existe de nombreuses autres fonctions que vous pouvez utiliser. Il suffit de les rechercher sur Google et vous en trouverez un tas.
Le début de l’ écran LCD (16,2) définit le nombre de colonnes et de lignes de l’écran LCD. Si vous avez un écran LCD avec 20 colonnes et 4 lignes (20×4), vous devrez le modifier en lcd.begin(20×4).
La commande lcd.print (« –message– ») imprime un message sur la première colonne et la première ligne de l’écran LCD. Le « message » doit avoir une longueur maximale égale au nombre de colonnes de l’écran LCD. Par exemple, pour 16 colonnes, la longueur maximale de l’affichage est égale à 16 et pour 20 colonnes, la longueur maximale de l’affichage est égale à 20.
La commande lcd.setCursor (0,1) placera le curseur sur la première colonne de la deuxième ligne. Si vous avez un écran LCD 20×4 et que vous souhaitez imprimer un message sur la cinquième colonne et la troisième ligne, vous devez utiliser : lcd.setCursor(4,2).
Vous pouvez continuer à jouer avec cela en cliquant sur le bouton « Modifier » et commencer à apporter vos propres modifications au code. Par exemple, essayez de modifier le message sur la première et la deuxième ligne. Vous avez terminé avec succès un autre tutoriel « Comment faire » Arduino et vous avez appris à utiliser un écran LCD avec Arduino uno.
Le forfait comprend : 1 écran LCD 16x2 1602 1 × embase mâle à une rangée de broches (16 broches)