Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Module de capteur de température numérique I2C MINI de haute précision et de faible puissance TMP100. Le TMP100 est idéal pour les mesures de température étendues. Cet appareil offre une précision de ±1°C sans nécessiter d'étalonnage ou de conditionnement de signal de composant externe. Voici la démonstration avec Arduino Nano.
Étape 1: Ce dont vous avez besoin.
1. Arduino Nano
2. TMP100
3. Câble I²C
4. Bouclier I²C pour Arduino Nano
Étape 2: Connexion:
Prenez un shield I2C pour Arduino Nano et poussez-le doucement sur les broches de Nano.
Connectez ensuite l'une des extrémités du câble I2C au capteur TMP100 et l'autre extrémité au blindage I2C.
Les connexions sont montrées dans l'image ci-dessus.
Étape 3: Coder:
Le code Arduino pour TMP100 peut être téléchargé depuis notre référentiel GitHub-Dcube Store
Voici le lien pour le même:
github.com/DcubeTechVentures/TMP100..
Nous incluons la bibliothèque Wire.h pour faciliter la communication I2c du capteur avec la carte Arduino.
Vous pouvez également copier le code d'ici, il est donné comme suit:
// Distribué avec une licence libre-arbitre.
// Utilisez-le comme vous le souhaitez, à profit ou gratuitement, à condition qu'il rentre dans les licences de ses œuvres associées.
// TMP100
// Ce code est conçu pour fonctionner avec le mini module TMP100_I2CS I2C disponible dans Dcube Store.
#comprendre
// L'adresse I2C du TMP100 est 0x4F (79)
#define Adr 0x4F
void setup()
{
// Initialiser la communication I2C en tant que MASTER
Fil.begin();
// Initialiser la communication série, définir le débit en bauds = 9600
Serial.begin(9600);
// Démarrer la transmission I2C
Wire.beginTransmission(Adr);
// Sélection du registre de configuration
Wire.write(0x01);
// Définir la conversion continue, le mode comparateur, la résolution 12 bits
Wire.write(0x60);
// Arrêter la transmission I2C
Wire.endTransmission();
retard (300);
}
boucle vide()
{
données int non signées[2];
// Démarrer la transmission I2C
Wire.beginTransmission(Adr);
// Sélection du registre de données
Wire.write(0x00);
// Arrêter la transmission I2C
Wire.endTransmission();
// Demande 2 octets de données
Wire.requestFrom(Adr, 2);
// Lecture de 2 octets de données
// cTemp msb, cTemp lsb
if(Fil.disponible() == 2)
{
data[0] = Wire.read();
données[1] = Wire.read();
}
// Convertir les données
float cTemp = (((données[0] * 256) + (données[1] & 0xF0)) / 16) * 0,0625;
float fTemp = cTemp * 1,8 + 32;
// Sortie des données vers le moniteur série
Serial.print("Température en Celsius: ");
Serial.print(cTemp);
Serial.println("C");
Serial.print("Température en Fahrenheit: ");
Serial.print(fTemp);
Serial.println(" F");
retard (500);
}
Étape 4: Candidatures:
Diverses applications incorporant le capteur de température numérique à faible consommation et haute précision TMP100 incluent la surveillance de la température de l'alimentation, la protection thermique des périphériques informatiques, la gestion de la batterie ainsi que les machines de bureau.