2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Digitální teplotní senzor TMP100 I2C MINI s vysokou přesností a nízkým výkonem. TMP100 je ideální pro rozšířené měření teploty. Toto zařízení nabízí přesnost ± 1 ° C bez nutnosti kalibrace nebo úpravy signálu externích komponent. Zde je ukázka s Arduino Nano.
Krok 1: Co potřebujete..
1. Arduino Nano
2. TMP100
3. I²C kabel
4. I²C štít pro Arduino Nano
Krok 2: Připojení:
Vezměte štít I2C pro Arduino Nano a jemně jej zatlačte přes kolíky Nano.
Poté připojte jeden konec kabelu I2C ke snímači TMP100 a druhý konec ke stínění I2C.
Připojení jsou znázorněna na obrázku výše.
Krok 3: Kód:
Kód Arduino pro TMP100 lze stáhnout z našeho úložiště GitHub-Dcube Store
Zde je odkaz na totéž:
github.com/DcubeTechVentures/TMP100..
Zahrnujeme knihovnu Wire.h pro usnadnění I2c komunikace senzoru s deskou Arduino.
Odtud můžete také zkopírovat kód, který je uveden následovně:
// Distribuováno s licencí svobodné vůle.
// Používejte jej jakýmkoli způsobem, ať už ziskem nebo zdarma, za předpokladu, že se vejde do licencí souvisejících děl.
// TMP100
// Tento kód je navržen tak, aby fungoval s mini modulem TMP100_I2CS I2C, který je k dispozici v Dcube Store.
#zahrnout
// Adresa TMP100 I2C je 0x4F (79)
#define Addr 0x4F
neplatné nastavení ()
{
// Inicializujte komunikaci I2C jako MASTER
Wire.begin ();
// Inicializace sériové komunikace, nastavení přenosové rychlosti = 9600
Serial.begin (9600);
// Spusťte přenos I2C
Wire.beginTransmission (Addr);
// Vyberte konfigurační registr
Wire.write (0x01);
// Nastavení kontinuální konverze, režim komparátoru, 12bitové rozlišení
Wire.write (0x60);
// Zastavte přenos I2C
Wire.endTransmission ();
zpoždění (300);
}
prázdná smyčka ()
{
nepodepsaná int data [2];
// Spusťte přenos I2C
Wire.beginTransmission (Addr);
// Vyberte datový registr
Wire.write (0x00);
// Zastavte přenos I2C
Wire.endTransmission ();
// Vyžádejte si 2 bajty dat
Wire.requestFrom (Addr, 2);
// Přečíst 2 bajty dat
// cTemp msb, cTemp lsb
pokud (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Převod dat
float cTemp = (((data [0] * 256) + (data [1] & 0xF0)) / 16) * 0,0625;
float fTemp = cTemp * 1,8 + 32;
// Výstup dat na sériový monitor
Serial.print ("Teplota ve stupních Celsia:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Teplota ve stupních Fahrenheita:");
Serial.print (fTemp);
Serial.println ("F");
zpoždění (500);
}
Krok 4: Aplikace:
Mezi různé aplikace zahrnující digitální snímač teploty TMP100 s nízkým výkonem a vysokou přesností patří monitorování teploty napájecího zdroje, periferní tepelná ochrana počítače, správa baterií a kancelářské stroje.