Სარჩევი:

ინტერფეისი TMP-112 არდუინო ნანოსთან (I2C): 5 ნაბიჯი
ინტერფეისი TMP-112 არდუინო ნანოსთან (I2C): 5 ნაბიჯი

ვიდეო: ინტერფეისი TMP-112 არდუინო ნანოსთან (I2C): 5 ნაბიჯი

ვიდეო: ინტერფეისი TMP-112 არდუინო ნანოსთან (I2C): 5 ნაბიჯი
ვიდეო: 79 გაკვეთლი - ინტერფეისი ნაწილი - 1 2024, ნოემბერი
Anonim
ინტერფეისის TMP-112 არდუინო ნანოსთან (I2C)
ინტერფეისის TMP-112 არდუინო ნანოსთან (I2C)

გამარჯობა, კარგი მისალმებები.. !!

მე (სომანშუ ჩუდჰარი) Dcube– ის ტექნოლოგიური საწარმოების სახელით, რომელიც აპირებს ტემპერატურის გაზომვას არდუინო ნანოს გამოყენებით, ეს არის I2C პროტოკოლის ერთ – ერთი პროგრამა ტემპერატურის სენსორის TMP-112 ანალოგური მონაცემების წასაკითხად.

ნაბიჯი 1: მიმოხილვა

მიმოხილვა
მიმოხილვა
  1. TMP-112 არის ტემპერატურის სენსორი.
  2. მონაცემთა ბმული:

ნაბიჯი 2: რაც გჭირდებათ / ბმულები

რაც გჭირდებათ / ბმულები
რაც გჭირდებათ / ბმულები
  1. არდუინო ნანო
  2. I²C ფარი არდუინო ნანოსთვის
  3. USB კაბელი ტიპი A მიკრო ტიპი B 6 ფეხზე გრძელი
  4. I²C კაბელი
  5. TMP112 I²C ტემპერატურის სენსორი ±.5 ° C 12-ბიტიანი I²C მინი მოდული

ნაბიჯი 3: სქემის დიაგრამა

Წრიული დიაგრამა
Წრიული დიაგრამა
Წრიული დიაგრამა
Წრიული დიაგრამა

ნაბიჯი 4: პროგრამირება

პროგრამირება
პროგრამირება

#ჩართეთ

ბათილად დაყენება ()

{

// TMP112 I2C მისამართი

#განსაზღვრეთ TMP_ADDR 0x48

// შეუერთდით I2c Bus– ს, როგორც ოსტატს

Wire.begin ();

// სერიული კომუნიკაციის დაწყება

სერიული.დაწყება (9600);

// დაიწყეთ გადაცემა

Wire.beginTransmission (TMP_ADDR);

// აირჩიეთ ჩართვა რეგისტრაცია

Wire.write (0x01);

// აირჩიეთ ნორმალური ოპერაცია

Wire.write (0x60A0);

// გადაცემის დასრულება და გამოშვება I2C ავტობუსი

Wire.endTransmission ();

}

ბათილი მარყუჟი ()

{

// დაიწყეთ გადაცემა

Wire.beginTransmission (TMP_ADDR);

// აირჩიეთ მონაცემთა რეგისტრატორები

Wire.write (0X00);

// გადაცემის დასრულება

Wire.endTransmission ();

დაგვიანება (500);

// მოითხოვეთ 2 ბაიტი, Msb პირველი

მავთული. მოთხოვნა (TMP_ADDR, 2);

// წაიკითხეთ ორი ბაიტი

ხოლო (Wire. Available ())

{

// ამოიღეთ ნაგავი

Serial.flush ();

int msb = Wire.read ();

int lsb = Wire.read ();

Wire.endTransmission ();

// მონაცემთა კონვერტაცია ნედლ მნიშვნელობებში

int rawtmp = msb << 8 | lsb;

int value = rawtmp >> 4;

ორმაგი ans = მნიშვნელობა * 0.0625;

// ამონაბეჭდი გამომავალი

Serial.print ("ცელსიუსის მნიშვნელობა:");

Serial.println (ans);

}

}

ნაბიჯი 5:

მე გავაკეთე ყველაფერი რაც შენ გააკეთე;-)

დამატებითი კითხვებისთვის შეგიძლიათ ეწვიოთ ჩვენს საიტს:

www.dcubetechnologies.com

გირჩევთ: