Spisu treści:

Połączenie TMP-112 z Arduino Nano (I2C): 5 kroków
Połączenie TMP-112 z Arduino Nano (I2C): 5 kroków

Wideo: Połączenie TMP-112 z Arduino Nano (I2C): 5 kroków

Wideo: Połączenie TMP-112 z Arduino Nano (I2C): 5 kroków
Wideo: Jak podłączyć czujnik zmierzchowy AZ-112 z zewnętrzną sondą [F&F] 2024, Listopad
Anonim
Interfejs TMP-112 z Arduino Nano (I2C)
Interfejs TMP-112 z Arduino Nano (I2C)

Dzień dobry, Dobre Pozdrowienia..!!

I (Somanshu Choudhary) na zlecenie firmy Dcube tech zamierza mierzyć temperaturę za pomocą Arduino nano, jest to jedno z zastosowań protokołu I2C do odczytu danych analogowych czujnika temperatury TMP-112.

Krok 1: Przegląd

Przegląd
Przegląd
  1. TMP-112 to czujnik temperatury.
  2. KARTA KATALOGOWA Link:

Krok 2: Czego potrzebujesz / Linki

Czego potrzebujesz / Linki
Czego potrzebujesz / Linki
  1. Arduino Nano
  2. I²C Shield dla Arduino Nano
  3. Kabel USB typu A do Micro typu B o długości 6 stóp
  4. Kabel I²C
  5. Czujnik temperatury TMP112 I²C ±.5°C 12-bitowy moduł mini I²C

Krok 3: Schemat obwodu

Schemat obwodu
Schemat obwodu
Schemat obwodu
Schemat obwodu

Krok 4: Programowanie

Programowanie
Programowanie

#włączać

pusta konfiguracja()

{

// adres I2C TMP112

#define TMP_ADDR 0x48

// Dołącz do magistrali I2c jako master

Wire.początek();

// Rozpocznij komunikację szeregową

Serial.początek(9600);

// Rozpocznij transmisję

Wire.beginTransmission(TMP_ADDR);

// Wybierz WŁĄCZ rejestr

Wire.write(0x01);

// Wybierz normalne działanie

Drut.zapis (0x60A0);

// Zakończ transmisję i zwolnij magistralę I2C

Wire.endTransmission();

}

pusta pętla()

{

// Rozpocznij transmisję

Wire.beginTransmission(TMP_ADDR);

// Wybierz rejestry danych

Wire.write(0X00);

// Zakończ transmisję

Wire.endTransmission();

opóźnienie (500);

// Żądaj 2 bajtów, najpierw Msb

Wire.requestFrom(TMP_ADDR, 2);

// Przeczytaj dwa bajty

while(Przewód.dostępny())

{

//usuń śmieci

Serial.flush();

int msb = Wire.read();

int lsb = Wire.read();

Wire.endTransmission();

// Konwersja danych w nieprzetworzonych wartościach

int rawtmp = msb << 8 |lsb;

int wartość = rawtmp >> 4;

podwójny ans = wartość * 0,0625;

// Wydrukuj wyjście

Serial.print("wartość celsjusza: ");

Serial.println(ods);

}

}

Krok 5:

Zrobiłem co w mojej mocy, a ty;-)

W przypadku dalszych pytań zapraszamy do odwiedzenia naszej strony:

www.dcubetechnologies.com

Zalecana: