Inhoudsopgave:

Arduino Nano - TMP100 temperatuursensor tutorial - Ajarnpa
Arduino Nano - TMP100 temperatuursensor tutorial - Ajarnpa

Video: Arduino Nano - TMP100 temperatuursensor tutorial - Ajarnpa

Video: Arduino Nano - TMP100 temperatuursensor tutorial - Ajarnpa
Video: Arduino Nano - TMP100 Temperature Sensor Tutorial 2024, November
Anonim
Image
Image

TMP100 Hoognauwkeurige, energiezuinige, digitale temperatuursensor I2C MINI-module. De TMP100 is ideaal voor uitgebreide temperatuurmetingen. Dit apparaat biedt een nauwkeurigheid van ±1°C zonder kalibratie of signaalconditionering van externe componenten. Hier is de demonstratie met Arduino Nano.

Stap 1: Wat je nodig hebt.

Wat je nodig hebt..!!
Wat je nodig hebt..!!

1. Arduino Nano

2. TMP100

3. I²C-kabel

4. I²C-schild voor Arduino Nano

Stap 2: Aansluiting:

Verbinding
Verbinding
Verbinding
Verbinding
Verbinding
Verbinding
Verbinding
Verbinding

Neem een I2C-schild voor Arduino Nano en duw het voorzichtig over de pinnen van Nano.

Sluit vervolgens het ene uiteinde van de I2C-kabel aan op de TMP100-sensor en het andere uiteinde op de I2C-afscherming.

De aansluitingen zijn weergegeven in de afbeelding hierboven.

Stap 3: Coderen:

Code
Code

De Arduino-code voor TMP100 kan worden gedownload van onze GitHub-repository-Dcube Store

Hier is de link voor hetzelfde:

github.com/DcubeTechVentures/TMP100..

We nemen bibliotheek Wire.h op om de I2c-communicatie van de sensor met het Arduino-bord te vergemakkelijken.

U kunt de code ook hier kopiëren, deze wordt als volgt gegeven:

// Gedistribueerd met een vrije wilslicentie.

// Gebruik het zoals je wilt, winst of gratis, op voorwaarde dat het past in de licenties van de bijbehorende werken.

// TMP100

// Deze code is ontworpen om te werken met de TMP100_I2CS I2C Mini Module die beschikbaar is in Dcube Store.

#erbij betrekken

// TMP100 I2C-adres is 0x4F(79)

#define Addr 0x4F

ongeldige setup()

{

// Initialiseer I2C-communicatie als MASTER

Draad.begin();

// Initialiseer seriële communicatie, stel baudrate in = 9600

Serieel.begin(9600);

// Start I2C-verzending

Wire.beginTransmission (Addr);

// Selecteer configuratieregister

Draad.schrijven (0x01);

// Stel continue conversie, comparatormodus, 12-bits resolutie in

Draad.schrijven (0x60);

// Stop I2C-verzending

Wire.endTransmission();

vertraging (300);

}

lege lus()

{

niet-ondertekende int-gegevens[2];

// Start I2C-verzending

Wire.beginTransmission (Addr);

// Selecteer dataregister

Draad.schrijven (0x00);

// Stop I2C-verzending

Wire.endTransmission();

// Vraag 2 bytes aan gegevens aan

Wire.requestFrom(Addr, 2);

// Lees 2 bytes aan gegevens

// cTemp msb, cTemp lsb

if(Draad.beschikbaar() == 2)

{

data[0] = Draad.lezen();

data[1] = Draad.lezen();

}

// Converteer de gegevens

float cTemp = (((data[0] * 256) + (data[1] & 0xF0)) / 16) * 0.0625;

float fTemp = cTemp * 1.8 + 32;

// Gegevens uitvoeren naar seriële monitor

Serial.print ("Temperatuur in Celsius: ");

Serieel.print(cTemp);

Serieel.println("C");

Serial.print("Temperatuur in Fahrenheit: ");

Serieel.print(fTemp);

Serieel.println ("F");

vertraging (500);

}

Stap 4: Toepassingen:

Verschillende toepassingen met TMP100 low power, hoge nauwkeurigheid digitale temperatuursensor omvatten voeding temperatuurbewaking, computer perifere thermische beveiliging, batterijbeheer en kantoormachines.

Aanbevolen: