Innholdsfortegnelse:

Grensesnitt TMP-112 med Arduino Nano (I2C): 5 trinn
Grensesnitt TMP-112 med Arduino Nano (I2C): 5 trinn

Video: Grensesnitt TMP-112 med Arduino Nano (I2C): 5 trinn

Video: Grensesnitt TMP-112 med Arduino Nano (I2C): 5 trinn
Video: CT SOMATOM go.Up Thorax k- Grensesnitt og radiografens arbeidsflyt. 2024, November
Anonim
Grensesnitt TMP-112 med Arduino Nano (I2C)
Grensesnitt TMP-112 med Arduino Nano (I2C)

Hallo, God hilsen.. !!

Jeg (Somanshu Choudhary) på vegne av Dcube tech ventures som skal måle temperaturen ved hjelp av Arduino nano, det er en av applikasjonene til I2C-protokollen for å lese analoge data fra temperatursensoren TMP-112.

Trinn 1: Oversikt

Oversikt
Oversikt
  1. TMP-112 er en temperatursensor.
  2. DATASHEET Link:

Trinn 2: Hva du trenger / lenker

Det du trenger / lenker
Det du trenger / lenker
  1. Arduino Nano
  2. I²C -skjold for Arduino Nano
  3. USB -kabel Type A til Micro Type B 6 fot lang
  4. I²C -kabel
  5. TMP112 I²C Temperatursensor ±.5 ° C 12-bits I²C Minimodul

Trinn 3: Kretsdiagram

Kretsdiagram
Kretsdiagram
Kretsdiagram
Kretsdiagram

Trinn 4: Programmering

Programmering
Programmering

#inkludere

ugyldig oppsett ()

{

// I2C -adressen til TMP112

#define TMP_ADDR 0x48

// Bli med I2c Bus som master

Wire.begin ();

// Start seriell kommunikasjon

Serial.begin (9600);

// Start overføringen

Wire.beginTransmission (TMP_ADDR);

// Velg AKTIVER register

Wire.write (0x01);

// Velg normal drift

Wire.write (0x60A0);

// Avslutt overføring og slipp I2C -buss

Wire.endTransmission ();

}

hulrom ()

{

// Start overføringen

Wire.beginTransmission (TMP_ADDR);

// Velg dataregistre

Wire.write (0X00);

// Avslutt overføring

Wire.endTransmission ();

forsinkelse (500);

// Be om 2 byte, Msb først

Wire.requestFrom (TMP_ADDR, 2);

// Les de to byte

mens (Wire.available ())

{

// fjern søppel

Serial.flush ();

int msb = Wire.read ();

int lsb = Wire.read ();

Wire.endTransmission ();

// Datakonvertering i råverdier

int rawtmp = msb << 8 | lsb;

int verdi = rawtmp >> 4;

dobbelt ans = verdi * 0,0625;

// Utskrift

Serial.print ("celsius -verdi:");

Serial.println (ans);

}

}

Trinn 5:

Jeg gjorde mitt beste for å gjøre ditt;-)

For ytterligere spørsmål Besøk gjerne nettstedet vårt:

www.dcubetechnologies.com

Anbefalt: