Afficher la valeur d’une photorésistance (LDR) sur LCD 20x 4 i2c avec un Arduino Uno
Description :
Projet permettant de mesurer et afficher l’intensité lumineuse ambiante à l’aide d’une photorésistance (LDR) connectée à un Arduino Uno et d’un écran LCD 20×4 I2C.
La LDR change sa résistance en fonction de la lumière reçue, générant une variation de tension que l’Arduino lit via une entrée analogique. Cette valeur est ensuite convertie et affichée sur le LCD, offrant un retour visuel clair et en temps réel.
Ce montage est idéal pour des projets de surveillance de la lumière, de domotique, de jardin automatisé, ou toute application nécessitant un suivi visuel de l’intensité lumineuse. Le LCD I2C simplifie le câblage et permet d’afficher plusieurs informations simultanément sur ses 20×4 caractères.
Prérequis :
- 1 x Carte Arduino Uno
- 1 x LCD 20×4 2004 avec adaptateur d interface série IIC I2C
- 1 x Photorésistance (LDR)
- 1 x Résistances 220Ω
- 1 x Breadboard
- Fils de connexion
Vidéo de démonstration :
Schéma de câblage :


Code :
int sensorPin = A0; // sélectionnez la broche d'entrée pour le LDR
int sensorValue = 0; // variable pour stocker la valeur provenant du capteur
// Inclure le code de la bibliothèque:
#include <LiquidCrystal_I2C.h>
// Initialiser la bibliothèque avec les dimensions de l'interface
LiquidCrystal_I2C lcd(0x27, 20, 4);
void setup() {
Serial.begin(9600);
// Initialisation de l'interface LCD
lcd.init();
// Active le rétro-éclairage du LCD
lcd.backlight();
}
void loop() {
// lire la valeur du capteur :
sensorValue = analogRead(sensorPin);
//Positionner le curseur
lcd.setCursor(5, 1);
//Imprime du texte sur l'écran LCD.
lcd.print("Valeur LDR");
lcd.setCursor(8, 2);
lcd.print(sensorValue);
//On attend 500 ms avant la prochaine lecture.
delay(500);
}
