Índice:

Interface do TMP-112 com o Arduino Nano (I2C): 5 etapas
Interface do TMP-112 com o Arduino Nano (I2C): 5 etapas

Vídeo: Interface do TMP-112 com o Arduino Nano (I2C): 5 etapas

Vídeo: Interface do TMP-112 com o Arduino Nano (I2C): 5 etapas
Vídeo: How to Interface the TMP102 & TMP112 Temperature Sensors with Arduino 2024, Novembro
Anonim
Interface do TMP-112 com o Arduino Nano (I2C)
Interface do TMP-112 com o Arduino Nano (I2C)

Olá, Boas saudações.. !!

I (Somanshu Choudhary) em nome da Dcube tech ventures indo para medir temperatura usando Arduino nano, é uma das aplicações do protocolo I2C para ler dados analógicos do sensor de temperatura TMP-112.

Etapa 1: Visão geral

Visão geral
Visão geral
  1. TMP-112 é um sensor de temperatura.
  2. FOLHA DE DADOS Link:

Etapa 2: O que você precisa / links

O que você precisa / links
O que você precisa / links
  1. Arduino Nano
  2. Escudo I²C para Arduino Nano
  3. Cabo USB Tipo A para Micro Tipo B 6 pés de comprimento
  4. Cabo I²C
  5. Sensor de temperatura TMP112 I²C ± 0,5 ° C Minimódulo I²C de 12 bits

Etapa 3: Diagrama de Circuito

Diagrama de circuito
Diagrama de circuito
Diagrama de circuito
Diagrama de circuito

Etapa 4: Programação

Programação
Programação

#incluir

void setup ()

{

// endereço I2C do TMP112

# define TMP_ADDR 0x48

// Junte-se ao barramento I2c como mestre

Wire.begin ();

// Inicie a comunicação serial

Serial.begin (9600);

// Comece a transmissão

Wire.beginTransmission (TMP_ADDR);

// Selecione ENABLE register

Wire.write (0x01);

// Selecione a operação normal

Wire.write (0x60A0);

// Termina a transmissão e libera o barramento I2C

Wire.endTransmission ();

}

void loop ()

{

// Comece a transmissão

Wire.beginTransmission (TMP_ADDR);

// Selecionar registros de dados

Wire.write (0X00);

// Fim da transmissão

Wire.endTransmission ();

atraso (500);

// Solicita 2 bytes, Msb primeiro

Wire.requestFrom (TMP_ADDR, 2);

// Leia os dois bytes

while (Wire.available ())

{

// remove lixo

Serial.flush ();

int msb = Wire.read ();

int lsb = Wire.read ();

Wire.endTransmission ();

// Conversão de dados em valores brutos

int rawtmp = msb << 8 | lsb;

valor int = rawtmp >> 4;

ans duplo = valor * 0,0625;

// Imprimir saída

Serial.print ("valor celsius:");

Serial.println (ans);

}

}

Etapa 5:

Eu fiz o meu melhor, você faz o seu;-)

Para obter mais informações, visite nosso site:

www.dcubetechnologies.com

Recomendado: