Talaan ng mga Nilalaman:

Pag-interface ng TMP-112 Sa Arduino Nano (I2C): 5 Mga Hakbang
Pag-interface ng TMP-112 Sa Arduino Nano (I2C): 5 Mga Hakbang

Video: Pag-interface ng TMP-112 Sa Arduino Nano (I2C): 5 Mga Hakbang

Video: Pag-interface ng TMP-112 Sa Arduino Nano (I2C): 5 Mga Hakbang
Video: [ЕПІЧНЕ ВІДЕО] Встановив лінукс на планшет 2024, Nobyembre
Anonim
Pag-interfacing ng TMP-112 Sa Arduino Nano (I2C)
Pag-interfacing ng TMP-112 Sa Arduino Nano (I2C)

Kamusta, Magandang Pagbati.. !!

Ako (Somanshu Choudhary) sa ngalan ng Dcube tech ventures na susukat sa temperatura gamit ang Arduino nano, ito ay isa sa mga aplikasyon ng I2C protocol upang mabasa ang analog data ng temperatura Sensor TMP-112.

Hakbang 1: Pangkalahatang-ideya

Pangkalahatang-ideya
Pangkalahatang-ideya
  1. Ang TMP-112 ay isang sensor ng temperatura.
  2. Link ng DATASHEET:

Hakbang 2: Ano ang Kailangan Mo / Mga Link

Ano ang Kailangan / Link
Ano ang Kailangan / Link
  1. Arduino Nano
  2. I²C Shield para sa Arduino Nano
  3. Ang USB Cable Type A hanggang Micro Type B 6 na Talampakan ang Mahaba
  4. I²C Cable
  5. TMP112 I²C Temperatura Sensor ±.5 ° C 12-Bit I²C Mini Module

Hakbang 3: Diagram ng Circuit

Diagram ng Circuit
Diagram ng Circuit
Diagram ng Circuit
Diagram ng Circuit

Hakbang 4: Programming

Programming
Programming

# isama

walang bisa ang pag-setup ()

{

// I2C address ng TMP112

# tukuyin ang TMP_ADDR 0x48

// Sumali sa I2c Bus bilang master

Wire.begin ();

// Simulan ang serial komunikasyon

Serial.begin (9600);

// Simulan ang paghahatid

Wire.beginTransmission (TMP_ADDR);

// Piliin ang I-ENABLE register

Wire.write (0x01);

// Piliin ang normal na operasyon

Wire.write (0x60A0);

// Tapusin ang paghahatid at palabasin ang I2C bus

Wire.endTransmission ();

}

walang bisa loop ()

{

// Simulan ang paghahatid

Wire.beginTransmission (TMP_ADDR);

// Piliin ang Mga Rehistro ng Data

Wire.write (0X00);

// End Transmission

Wire.endTransmission ();

pagkaantala (500);

// Humiling ng 2 bytes, Msb muna

Wire.requestFrom (TMP_ADDR, 2);

// Basahin ang dalawang byte

habang (Wire.available ())

{

// tanggalin ang basura

Serial.flush ();

int msb = Wire.read ();

int lsb = Wire.read ();

Wire.endTransmission ();

// Data conversion sa mga raw na halaga

int rawtmp = msb << 8 | lsb;

int halaga = rawtmp >> 4;

doble ans = halaga * 0.0625;

// Output ng print

Serial.print ("halaga ng celsius:");

Serial.println (ans);

}

}

Hakbang 5:

Ginawa ko ang aking makakaya gawin ang iyo;-)

Para sa karagdagang quires Huwag mag-atubiling bisitahin ang aming site:

www.dcubetechnologies.com

Inirerekumendang: