Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Le capteur de température numérique STS21 offre des performances supérieures et un encombrement réduit. Il fournit des signaux calibrés et linéarisés au format numérique I2C. La fabrication de ce capteur est basée sur la technologie CMOSens, qui attribue les performances et la fiabilité supérieures du STS21. La résolution de STS21 peut être modifiée par commande, une batterie faible peut être détectée et une somme de contrôle permet d'améliorer la fiabilité de la communication. Voici sa démonstration de l'interfaçage avec Arduino nano.
Étape 1: Ce dont vous avez besoin.
1. Arduino Nano
2. STS21
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 STS21 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 STS21 peut être téléchargé à partir de notre référentiel GitHub-Dcube Store.
Voici le lien pour le même:
github.com/DcubeTechVentures/STS21…
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.
// STS21
// Ce code est conçu pour fonctionner avec le mini module STS21_I2CS I2C disponible dans Dcube Store.
#comprendre
// L'adresse I2C STS21 est 0x4A (74)
#définir l'adresse 0x4A
void setup()
{
// Initialiser la communication I2C en tant que MASTER
Fil.begin();
// Démarrer la communication série, définir le débit en bauds = 9600
Serial.begin(9600);
retard (300);
}
boucle vide()
{
données int non signées[2];
// Démarrer la transmission I2C
Wire.beginTransmission(addr);
// Ne sélectionnez pas de maître de retenue
Wire.write(0xF3);
// Fin de la transmission I2C
Wire.endTransmission();
retard (300);
// Demande 2 octets de données
Wire.requestFrom(addr, 2);
// Lecture de 2 octets de données
si (Fil.disponible() == 2)
{
data[0] = Wire.read();
données[1] = Wire.read();
}
// Convertir les données
int rawtmp = données[0] * 256 + données[1];
valeur int = rawtmp & 0xFFFC;
double cTemp = -46,85 + (175,72 * (valeur / 65536,0));
double 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 (300);
}
Étape 4: Candidatures:
Le capteur de température numérique STS21 peut être utilisé dans les systèmes qui nécessitent une surveillance de la température de haute précision. Il peut être incorporé dans divers équipements informatiques, équipements médicaux et systèmes de contrôle industriels avec la nécessité de mesurer la température avec une précision compétente.