Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
TMP100 Hög noggrannhet, låg effekt, digital temperatursensor I2C MINI-modul. TMP100 är idealisk för utökad temperaturmätning. Denna enhet erbjuder en noggrannhet på ± 1 ° C utan att kräva kalibrering eller extern komponentsignalkonditionering. Här är demonstrationen med Arduino Nano.
Steg 1: Vad du behöver.. !
1. Arduino Nano
2. TMP100
3. I²C -kabel
4. I²C -skärm för Arduino Nano
Steg 2: Anslutning:
Ta en I2C -sköld för Arduino Nano och skjut den försiktigt över stiften på Nano.
Anslut sedan den ena änden av I2C -kabeln till TMP100 -sensorn och den andra änden till I2C -skärmen.
Anslutningar visas på bilden ovan.
Steg 3: Kod:
Arduino-koden för TMP100 kan laddas ner från vår GitHub repository-Dcube Store
Här är länken till samma:
github.com/DcubeTechVentures/TMP100..
Vi inkluderar bibliotek Wire.h för att underlätta I2c -kommunikationen mellan sensorn och Arduino -kortet.
Du kan också kopiera koden härifrån, den ges enligt följande:
// Distribueras med en fri vilja licens.
// Använd den hur du vill, vinst eller gratis, förutsatt att den passar i licensen för dess associerade verk.
// TMP100
// Denna kod är utformad för att fungera med TMP100_I2CS I2C Mini Module som finns i Dcube Store.
#omfatta
// TMP100 I2C -adressen är 0x4F (79)
#define Addr 0x4F
void setup ()
{
// Initiera I2C -kommunikation som MASTER
Wire.begin ();
// Initiera seriell kommunikation, ange överföringshastighet = 9600
Serial.begin (9600);
// Starta I2C -sändning
Wire.beginTransmission (Addr);
// Välj konfigurationsregister
Wire.write (0x01);
// Ställ in kontinuerlig konvertering, komparatorläge, 12-bitars upplösning
Wire.write (0x60);
// Stoppa I2C -överföring
Wire.endTransmission ();
fördröjning (300);
}
void loop ()
{
osignerade int -data [2];
// Starta I2C -sändning
Wire.beginTransmission (Addr);
// Välj dataregister
Wire.write (0x00);
// Stoppa I2C -överföring
Wire.endTransmission ();
// Begär 2 byte med data
Wire.requestFrom (Addr, 2);
// Läs 2 byte med data
// cTemp msb, cTemp lsb
om (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Konvertera data
float cTemp = (((data [0] * 256) + (data [1] & 0xF0)) / 16) * 0,0625;
float fTemp = cTemp * 1,8 + 32;
// Utdata till seriell bildskärm
Serial.print ("Temperatur i Celsius:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Temperatur i Fahrenheit:");
Serial.print (fTemp);
Serial.println ("F");
fördröjning (500);
}
Steg 4: Ansökningar:
Olika applikationer som innehåller TMP100 digital temperatursensor med låg effekt, hög noggrannhet inkluderar temperaturövervakning av strömförsörjning, datortermiskt skydd, batterihantering samt kontorsmaskiner.