Turinys:

Sąsaja TMP-112 su „Arduino Nano“(I2C): 5 žingsniai
Sąsaja TMP-112 su „Arduino Nano“(I2C): 5 žingsniai

Video: Sąsaja TMP-112 su „Arduino Nano“(I2C): 5 žingsniai

Video: Sąsaja TMP-112 su „Arduino Nano“(I2C): 5 žingsniai
Video: Dune HD Solo 4K vartotojo sąsaja (interface) / Firmware: 160326_0135_r11 2024, Lapkritis
Anonim
Sąsaja TMP-112 su „Arduino Nano“(I2C)
Sąsaja TMP-112 su „Arduino Nano“(I2C)

Sveiki, Sveiki.. !!

Aš (Somanshu Choudhary) „Dcube tech“įmonių, ketinančių matuoti temperatūrą, naudodamas „Arduino nano“, vardu, yra viena iš I2C protokolo programų, skirtų skaityti analoginius temperatūros jutiklio TMP-112 duomenis.

1 žingsnis: apžvalga

Apžvalga
Apžvalga
  1. TMP-112 yra temperatūros jutiklis.
  2. DUOMENŲ LAPAS Nuoroda:

2 žingsnis: ko jums reikia / nuorodos

Ko jums reikia / Nuorodos
Ko jums reikia / Nuorodos
  1. Arduino Nano
  2. „I²C“skydas „Arduino Nano“
  3. USB kabelis nuo A tipo iki mikro tipo B 6 pėdų ilgio
  4. I²C kabelis
  5. TMP112 I²C temperatūros jutiklis ±.5 ° C 12 bitų I²C mini modulis

3 žingsnis: grandinės schema

Grandinės schema
Grandinės schema
Grandinės schema
Grandinės schema

4 žingsnis: programavimas

Programavimas
Programavimas

#įtraukti

negaliojanti sąranka ()

{

// TMP112 I2C adresas

#define TMP_ADDR 0x48

// Prisijunkite prie „I2c Bus“kaip pagrindinis

Wire.begin ();

// Pradėti serijinį ryšį

Serial.begin (9600);

// Pradėti perdavimą

Wire.beginTransmission (TMP_ADDR);

// Pasirinkite ĮJUNGTI registrą

Wire.write (0x01);

// Pasirinkite įprastą veikimą

Wire.write (0x60A0);

// Baigti perdavimą ir atleisti I2C magistralę

Wire.endTransmission ();

}

tuštumos kilpa ()

{

// Pradėti perdavimą

Wire.beginTransmission (TMP_ADDR);

// Pasirinkite duomenų registrus

Wire.write (0X00);

// Baigti perdavimą

Wire.endTransmission ();

vėlavimas (500);

// Prašykite 2 baitų, pirmiausia Msb

Wire.requestFrom (TMP_ADDR, 2);

// Perskaitykite du baitus

o (Wire.available ())

{

// išvežti šiukšles

Serial.flush ();

int msb = Wire.read ();

int lsb = Wire.read ();

Wire.endTransmission ();

// Duomenų konvertavimas neapdorotomis vertėmis

int rawtmp = msb << 8 | lsb;

int vertė = rawtmp >> 4;

dvigubas ans = vertė * 0,0625;

// Spausdinimo išvestis

Serial.print ("Celsijaus reikšmė:");

Serial.println (ans);

}

}

5 veiksmas:

Aš padariau viską, ką padariau tu;-)

Dėl papildomų klausimų nedvejodami apsilankykite mūsų svetainėje:

www.dcubetechnologies.com

Rekomenduojamas: