Tartalomjegyzék:

A TMP-112 illesztése Arduino nanóval (I2C): 5 lépés
A TMP-112 illesztése Arduino nanóval (I2C): 5 lépés

Videó: A TMP-112 illesztése Arduino nanóval (I2C): 5 lépés

Videó: A TMP-112 illesztése Arduino nanóval (I2C): 5 lépés
Videó: FULL BUILD | Rebuilding A DESTROYED Porsche 911 Turbo! 2024, November
Anonim
A TMP-112 illesztése Arduino Nano-val (I2C)
A TMP-112 illesztése Arduino Nano-val (I2C)

Helló, Üdv.. !!

I (Somanshu Choudhary) a Dcube tech vállalkozások nevében, akik Arduino nano segítségével mérik a hőmérsékletet, ez az I2C protokoll egyik alkalmazása a TMP-112 hőmérséklet-érzékelő analóg adatainak olvasására.

1. lépés: Áttekintés

Áttekintés
Áttekintés
  1. A TMP-112 egy hőmérséklet-érzékelő.
  2. ADATLAP Link:

2. lépés: Amire szüksége van / Linkek

Amire szüksége van / Linkek
Amire szüksége van / Linkek
  1. Arduino Nano
  2. I²C pajzs az Arduino Nano számára
  3. USB kábel A típus - B típusú Micro 6 láb hosszú
  4. I²C kábel
  5. TMP112 I²C hőmérsékletérzékelő ±.5 ° C 12 bites I²C mini modul

3. lépés: Áramköri diagram

Kördiagramm
Kördiagramm
Kördiagramm
Kördiagramm

4. lépés: Programozás

Programozás
Programozás

#befoglalni

üres beállítás ()

{

// A TMP112 I2C címe

#define TMP_ADDR 0x48

// Csatlakozzon mesterként az I2c Bus -hoz

Wire.begin ();

// Soros kommunikáció indítása

Sorozat.kezdet (9600);

// Indítsa el az átvitelt

Wire.beginTransmission (TMP_ADDR);

// Válassza ki a regisztráció engedélyezését

Wire.write (0x01);

// Válassza ki a normál működést

Wire.write (0x60A0);

// Az átvitel befejezése és az I2C busz elengedése

Wire.endTransmission ();

}

üres hurok ()

{

// Indítsa el az átvitelt

Wire.beginTransmission (TMP_ADDR);

// Válassza ki az Adatregiszterek lehetőséget

Wire.write (0X00);

// Az átvitel befejezése

Wire.endTransmission ();

késleltetés (500);

// Kérjen 2 bájtot, először Msb -t

Wire.requestFrom (TMP_ADDR, 2);

// Olvassa el a két bájtot

míg (Wire.available ())

{

// távolítsa el a szemetet

Serial.flush ();

int msb = Wire.read ();

int lsb = Drót.olvasás ();

Wire.endTransmission ();

// Adatkonverzió nyers értékekben

int rawtmp = msb << 8 | lsb;

int érték = rawtmp >> 4;

dupla ans = érték * 0,0625;

// Nyomtatási kimenet

Serial.print ("celsius érték:");

Serial.println (ans);

}

}

5. lépés:

Mindent megtettem, a tiédet;-)

További kérdéseivel keressen bátran weboldalunkon:

www.dcubetechnologies.com

Ajánlott: