Capteur de température LM75A avec LCD1602 I2C
Dans ce tutoriel, nous allons apprendre à utiliser le capteur de température LM75A pour afficher les relevés de température en Celsius et en Fahrenheit sur un écran LCD1602 en utilisant la communication I2C. Le LM75A peut mesurer des températures allant de -55 °C à +125 °C, ce qui le rend adapté à diverses applications. Une fois la configuration terminée, vous pourrez voir les relevés de température en temps réel sur l'écran LCD.


Pour ce projet, nous utiliserons le capteur LM75A et le module LCD1602 connectés via I2C, ce qui permet un câblage plus simple et l'utilisation de moins de broches sur l'Arduino. L'objectif est de créer un système qui lit en continu la température et l'affiche sur l'écran LCD. Si vous avez besoin de précisions sur une partie du processus, consultez le tutoriel vidéo (dans la vidéo à 00:00).
Matériel expliqué
Les principaux composants de ce projet comprennent le capteur de température LM75A et l'écran LCD1602. Le LM75A est un capteur de température I2C qui fournit des mesures de température précises. Il communique avec l'Arduino sur seulement deux fils, SDA (ligne de données) et SCL (ligne d'horloge), ce qui le rend facile à intégrer dans vos projets.
L'écran LCD1602 est un afficheur 16x2 qui peut afficher jusqu'à 32 caractères à la fois. En utilisant l'interface I2C, nous pouvons le contrôler avec seulement deux fils supplémentaires, ce qui simplifie grandement le câblage. La fonction de rétroéclairage de l'écran LCD peut également améliorer la visibilité dans des environnements peu éclairés.
Détails de la fiche technique
| Fabricant | Texas Instruments |
|---|---|
| Numéro de pièce | LM75A |
| Tension logique/E/S | de 2,7 V à 5,5 V |
| Tension d'alimentation | 2,7 V à 5,5 V |
| Courant de sortie (par canal) | S/O |
| Courant de crête (par canal) | Non applicable |
| Recommandations de fréquence PWM | Sans objet |
| Seuils logiques d'entrée | 0.3 * Vcc (bas), 0.7 * Vcc (haut) |
| Chute de tension / RDS(on)/ saturation | Non applicable |
| Limites thermiques | Fonctionnement : -55 °C à +125 °C |
| Paquet | SOT-23 |
| Notes / variantes | Disponible avec plusieurs adresses I2C |
- Assurez-vous d'une alimentation appropriée (2.7 V à 5.5 V).
- Utilisez des résistances de pull-up sur les lignes SDA et SCL si nécessaire.
- Vérifiez la configuration des adresses I2C pour plusieurs appareils.
- Maintenez les câbles courts pour minimiser les interférences.
- Plage de température du moniteur : -55 °C à +125 °C
- Utilisez le moniteur série pour déboguer les mesures de température.
- Gérer efficacement les états d'erreur dans le code.
- Faites attention aux exigences d'alimentation de l'écran.
Instructions de câblage

Pour câbler le capteur de température LM75A et l'écran LCD1602, commencez par connecter l'alimentation. Connectez la broche VCC du LM75A et celle du LCD1602 à la broche 5V de l'Arduino. Ensuite, connectez la broche de masse (GND) des deux modules à la broche GND de l'Arduino.
Ensuite, connectez les lignes de communication I2C. La broche SDA du LM75A doit être reliée à la broche A4 de l'Arduino, tandis que la broche SCL doit être reliée à la broche A5. Cela permet la communication I2C entre le capteur et l'Arduino. Assurez-vous que les connexions sont sécurisées pour éviter toute erreur de communication.
Exemples de code et guide pas à pas
Dans le code, nous incluons d'abord les bibliothèques nécessaires pour le capteur LM75A et l'écran LCD1602. L'extrait suivant montre comment créer une instance du capteur LM75A :
LM75A lm75a_sensor(false, false, false);Cette ligne initialise l'objet capteur LM75A. Les paramètres booléens correspondent aux broches A0, A1 et A2 du LM75A, permettant différentes adresses I2C si nécessaire.
Ensuite, nous configurons le moniteur série et initialisons l'écran LCD :
void setup(void) {
Serial.begin(9600);
lcd.begin();
lcd.backlight();
lcd.print("Robojax LM75A");
}Ici, nous démarrons la communication série à 9600 bauds et initialisons l'écran LCD. Le rétroéclairage est activé et un message initial est affiché à l'écran.
Dans la boucle principale, nous lisons en continu la température et l'affichons :
float temperature_in_degrees = lm75a_sensor.getTemperatureInDegrees();
if (temperature_in_degrees == INVALID_LM75A_TEMPERATURE) {
Serial.println("Error while getting temperature");
}Cette section récupère la température à partir du capteur. Si la lecture est invalide, un message d'erreur est envoyé au moniteur série. Sinon, la température peut être traitée et affichée sur l'écran LCD.
Démonstration / À quoi s'attendre
Une fois que tout est câblé et que le code est téléversé, vous devriez voir les relevés de température sur l'écran LCD1602, alternant entre Celsius et Fahrenheit. Si le capteur LM75A fonctionne correctement, il mettra à jour en continu la température affichée chaque seconde. En cas de problème, comme une polarité inversée ou un câblage incorrect, vérifiez les connexions et assurez-vous d'utiliser les bonnes broches (dans la vidéo à 00:00).
Ce dont vous pourriez avoir besoin
-
AmazonAcheter LM75A sur Amazonamzn.to
-
Amazon
-
eBayAcheter un LCD1602-I2C sur eBayebay.us
-
AliExpressAchetez 10 pièces de LCD1602-I2C sur AliExpresss.click.aliexpress.com
Ressources et références
-
ExterneBibliothèque LM75A de GitHubgithub.com
-
Externe
-
ExterneFiche technique LM75A de NXPnxp.com
Fichiers📁
Fichier Fritzing
-
Capteur de température LM75
Temperature Sensor - LM75.fzpz0.01 MB
Autres fichiers
-
Bibliothèque LM75A de Robojax.com
robojax-LM75A_temperature_sensor.zip0.56 MB