Съдържание:

Свързване на TMP-112 с Arduino Nano (I2C): 5 стъпки
Свързване на TMP-112 с Arduino Nano (I2C): 5 стъпки

Видео: Свързване на TMP-112 с Arduino Nano (I2C): 5 стъпки

Видео: Свързване на TMP-112 с Arduino Nano (I2C): 5 стъпки
Видео: Текстовые LCD дисплей на контроллере HD44780, Уроки Arduino 2024, Ноември
Anonim
Свързване на TMP-112 с Arduino Nano (I2C)
Свързване на TMP-112 с Arduino Nano (I2C)

Здравейте, Добър поздрав.. !!

Аз (Somanshu Choudhary) от името на технологичните предприятия на Dcube, които ще измерват температурата с помощта на Arduino nano, това е едно от приложенията на протокола I2C за четене на аналогови данни от температурния сензор TMP-112.

Стъпка 1: Общ преглед

Общ преглед
Общ преглед
  1. TMP-112 е температурен сензор.
  2. DATASHEET Връзка:

Стъпка 2: Какво ви трябва / Връзки

Какво ви трябва / Връзки
Какво ви трябва / Връзки
  1. Arduino Nano
  2. I²C щит за Arduino Nano
  3. USB кабел от тип A до микро тип B с дължина 6 фута
  4. I²C кабел
  5. TMP112 I²C Температурен сензор ±.5 ° C 12-битов I²C мини модул

Стъпка 3: Електрическа схема

Електрическа схема
Електрическа схема
Електрическа схема
Електрическа схема

Стъпка 4: Програмиране

Програмиране
Програмиране

#включва

void setup ()

{

// I2C адрес на TMP112

#дефинирайте TMP_ADDR 0x48

// Присъединете се към I2c Bus като главен

Wire.begin ();

// Стартиране на серийна комуникация

Serial.begin (9600);

// Започнете предаването

Wire.beginTransmission (TMP_ADDR);

// Изберете ENABLE регистър

Wire.write (0x01);

// Изберете нормална работа

Wire.write (0x60A0);

// Край на предаване и освобождаване на I2C шина

Wire.endTransmission ();

}

void loop ()

{

// Започнете предаването

Wire.beginTransmission (TMP_ADDR);

// Избор на регистри на данни

Wire.write (0X00);

// Край на предаването

Wire.endTransmission ();

забавяне (500);

// Поискайте 2 байта, първо Msb

Wire.requestFrom (TMP_ADDR, 2);

// Прочетете двата байта

while (Wire.available ())

{

// премахване на боклука

Serial.flush ();

int msb = Wire.read ();

int lsb = Wire.read ();

Wire.endTransmission ();

// Преобразуване на данни в необработени стойности

int rawtmp = msb << 8 | lsb;

int стойност = rawtmp >> 4;

двоен ans = стойност * 0,0625;

// Отпечатване

Serial.print ("стойност на Целзий:");

Serial.println (ans);

}

}

Стъпка 5:

Направих всичко възможно да направиш твоето;-)

За допълнителни въпроси Чувствайте се свободни да посетите нашия сайт:

www.dcubetechnologies.com

Препоръчано: