2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
TMP100 I2C MINI modul digitalnog osjetnika temperature visoke točnosti, male snage, digitalnog osjetnika temperature. TMP100 je idealan za produženo mjerenje temperature. Ovaj uređaj nudi točnost od ± 1 ° C bez potrebe za kalibracijom ili kondicioniranjem signala vanjske komponente. Evo demonstracije s Arduinom Nanom.
Korak 1: Što vam treba..
1. Arduino Nano
2. TMP100
3. I²C kabel
4. I²C štit za Arduino Nano
Korak 2: Povezivanje:
Uzmite I2C štit za Arduino Nano i lagano ga gurnite preko igle Nano.
Zatim spojite jedan kraj I2C kabela na senzor TMP100, a drugi kraj na I2C štit.
Priključci su prikazani na gornjoj slici.
Korak 3: Kôd:
Arduino kôd za TMP100 može se preuzeti s našeg GitHub spremišta-Dcube Store
Evo linka za isto:
github.com/DcubeTechVentures/TMP100..
Uključujemo knjižnicu Wire.h kako bismo olakšali I2c komunikaciju senzora s Arduino pločom.
Ovdje možete i kopirati kôd, dat je na sljedeći način:
// Distribuirano s licencom slobodne volje.
// Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela.
// TMP100
// Ovaj kod je dizajniran za rad s TMP100_I2CS I2C mini modulom dostupnim u Dcube Storeu.
#uključi
// TMP100 I2C adresa je 0x4F (79)
#define Addr 0x4F
void setup ()
{
// Inicializirajte I2C komunikaciju kao MASTER
Wire.begin ();
// Pokretanje serijske komunikacije, postavljena brzina prijenosa = 9600
Serial.begin (9600);
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir registra konfiguracije
Wire.write (0x01);
// Postavljanje kontinuirane konverzije, usporednog moda, 12-bitne razlučivosti
Wire.write (0x60);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
kašnjenje (300);
}
void loop ()
{
nepotpisani int podaci [2];
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir registra podataka
Wire.write (0x00);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
// Zatražite 2 bajta podataka
Wire.requestFrom (Addr, 2);
// Očitavanje 2 bajta podataka
// cTemp msb, cTemp lsb
if (Wire.available () == 2)
{
podaci [0] = Wire.read ();
podaci [1] = Wire.read ();
}
// Pretvorimo podatke
float cTemp = (((podaci [0] * 256) + (podaci [1] & 0xF0)) / 16) * 0,0625;
float fTemp = cTemp * 1,8 + 32;
// Izlaženje podataka na serijski monitor
Serial.print ("Temperatura u Celzijusima:");
Serijski.ispis (cTemp);
Serial.println ("C");
Serial.print ("Temperatura u Fahrenheitu:");
Serijski.ispis (fTemp);
Serial.println ("F");
kašnjenje (500);
}
Korak 4: Aplikacije:
Različite aplikacije koje uključuju TMP100 digitalni senzor temperature niske točnosti i visoke preciznosti uključuju praćenje temperature napajanja, perifernu toplinsku zaštitu računala, upravljanje baterijama, kao i uredske strojeve.