SOMMAIRE ►
Le projet de thermomètre Arduino avec le module TM1637 et le sensor DS18B20 ou le capteur de température numérique DHT22 / DHT11 est un projet simple pour les débutants. Nous avons décidé de faire un bref aperçu de trois variantes de thermomètres sur la LED à 4 caractères TM1637. Sur cette page, nous avons placé les diagrammes d’assemblage du projet avec les programmes pour le microcontrôleur Arduino et le module display TM1637.
Ce dont vous aurez besoin
- Arduino Uno / Arduino Nano / Arduino Pro Mini
- module display TM1637
- capteur DS18B20 / LM35 / DHT22 ou DHT11
- résistances et breadboard
- librairies TM1637Display.h et DHT.h / DallasTemperature.h et OneWire.h
Matériel supplémentaire sur ce sujet:
Thermomètre Arduino sur afficheur TM1637
Lorsque vous choisissez un capteur pour le thermomètre, faites attention à ses spécifications. Le capteur ds18b20 a une plage de mesure de température de -55 … +125°C avec une précision de 0,5 degrés maximum. Le capteur lm35 n’a pas la capacité de mesurer les températures négatives et a une incertitude de mesure de 2°C. Le capteur de température numérique DHT22 mesure dans la plage -40 … +150°C et peut également mesurer l’humidité.
Arduino thermomètre sur TM1637 et capteur DS18B20

La première version du thermomètre sur Arduino utilise un capteur scellé DS18B20. Nous avons déjà vu la connexion du capteur DS18B20 à l’Arduino, qui communique avec le microcontrôleur Arduino en utilisant la bibliothèque DallasTemperature.h. Le schéma montre la connexion du capteur à la carte, n’oubliez pas d’ajouter une résistance de 4,7kΩ entre les broches 5V et Data du capteur lors de l’assemblage du thermomètre TM1637.
#include "TM1637Display.h" TM1637Display display(3, 2); // CLC, DIO #include "OneWire.h" #include "DallasTemperature.h" OneWire oneWire(10); DallasTemperature ds(&oneWire); const uint8_t C[] = { SEG_B | SEG_A | SEG_F | SEG_G, SEG_A | SEG_D | SEG_E | SEG_F }; void setup() { ds.begin(); Serial.begin(9600); display.setBrightness(4); // luminosité de 0 à 7 } void loop() { ds.requestTemperatures(); int t = ds.getTempCByIndex(0); Serial.print("Temperature: "); Serial.println(t); display.showNumberDecEx(t, (0x80 >> 0), false, 2, 0); display.setSegments(C, 2, 2); delay(100); }
Explication du code pour mesurer la température avec DS18B20:
- les informations relatives à la température sont en outre affichées sur le port série;
- lors de la connexion de plusieurs écrans – chaque module doit avoir son propre nom dans le logiciel et les broches de connexion doivent être spécifiées, par exemple:
TM1637Display display1 (2, 3);
TM1637Display display2 (4, 5);
Arduino thermomètre sur TM1637 et capteur LM35

Dans cet exemple, nous utilisons les relevés du capteur analogique LM35 pour créer un thermomètre basé sur le module afficher TM1637. Ce capteur ne nécessite aucun étalonnage ou réglage pour garantir la précision, le signal électrique du capteur de température LM35 est proportionnel aux degrés Celsius. Nous allons afficher la température sur les deux premiers segments de l’écran et les deux autres segments afficheront une icône de degré.
#include "TM1637Display.h" TM1637Display display(3, 2); // CLC, DIO const uint8_t C[] = { SEG_B | SEG_A | SEG_F | SEG_G, SEG_A | SEG_D | SEG_E | SEG_F }; void setup() { pinMode(A1, INPUT); Serial.begin(9600); display.setBrightness(4); // luminosité de 0 à 7 } void loop() { int t = analogRead(A1); int temp = (t / 1023.0) * 5.0 * 1000 / 10; Serial.print("Temperature: "); Serial.println(temp); display.showNumberDecEx(temp, (0x80 >> 0), false, 2, 0); display.setSegments(C, 2, 2); delay(100); }
Explication du code pour mesurer la température avec LM35:
- la luminosité de l’écran passe de 0 à 7 dans la commande display.setBrightness();
- les ports de connexion de l’écran et du sensor sont spécifiés dans le code.
Arduino thermomètre sur TM1637 et capteur DHT22

Troisième option. Le capteur de température et d’humidité de l’air DHT11 peut également être utilisé pour réaliser le projet, mais le capteur DHT22 fournit la mesure la plus précise pour créer le thermomètre. Le schéma ne changera pas, et vous devez seulement changer le type de capteur utilisé dans le programme. Tout ce que vous avez à faire est d’assembler le circuit avec le module TM1637 et de charger le programme dans le microcontrôleur Arduino Uno.
#include "TM1637Display.h" TM1637Display display(3, 2); // CLC, DIO #include "DHT.h" DHT dht(8, DHT22); const uint8_t C[] = { SEG_B | SEG_A | SEG_F | SEG_G, SEG_A | SEG_D | SEG_E | SEG_F }; void setup() { dht.begin(); Serial.begin(9600); display.setBrightness(4); // luminosité de 0 à 7 } void loop() { int t = dht.readTemperature(); Serial.print("Temperature: "); Serial.println(t); display.showNumberDecEx(t, (0x80 >> 0), false, 2, 0); display.setSegments(C, 2, 2); delay(100); }
Explication du code pour mesurer la température avec DHT22:
- vous pouvez utiliser DHT11 dans le projet en faisant des changements au code;
- les informations relatives à la température sont en outre affichées sur le port série.
Conclusion. En plus du thermomètre Arduino avec module d’affichage à quatre chiffres et sept segments présenté dans cette revue, vous pouvez également trouver le projet de thermomètre LCD 1602 ou la station météo avec module bluetooth sur notre site. Si vous avez des questions sur la construction ou la programmation d’un thermomètre à base de Arduino, n’hésitez pas à les laisser dans les commentaires de cet article.








Bonjour,
j’ai bien suivi toutes tes explication, cela fonctionne affichage sur l’écran, mais comment fait-on varier la t° selon ou se trouve la sonde, c’est une type DS18B20 et l’afficher sur TM1637.
Étant novice je ne sais ou regarder.
En tout cas merci pour ces explications concrètes.
Frédo.