Tutorial Java del sensor de temperatura Raspberry Pi MCP9805: 4 passos
Tutorial Java del sensor de temperatura Raspberry Pi MCP9805: 4 passos
Anonim
Image
Image

MCP9805 és un sensor de temperatura digital del mòdul de memòria. S'incorpora amb registres programables per l'usuari que proporcionen flexibilitat per a aplicacions de detecció de temperatura. Aquest sensor està dissenyat per incorporar-se al sensor de temperatura del mòdul de memòria de la plataforma mòbil. Aquí teniu la demostració amb un codi java que utilitza Raspberry Pi.

Pas 1: el que necessiteu..

Què necessites..!!
Què necessites..!!

1. Raspberry Pi

2. MCP9805

3. Cable I²C

4. Escut I²C per a Raspberry Pi

5. Cable Ethernet

Pas 2: connexions

Connexions
Connexions
Connexions
Connexions
Connexions
Connexions
Connexions
Connexions

Agafeu un escut I2C per a raspberry pi i passeu-lo suaument per sobre dels pins gpio de raspberry pi.

A continuació, connecteu un extrem del cable I2C al sensor MCP9805 i l’altre extrem al blindatge I2C.

Connecteu també el cable Ethernet al pi o podeu utilitzar un mòdul WiFi. Les connexions es mostren a la imatge superior.

Pas 3: Codi

Codi
Codi

El codi Java per a MCP9805 es pot descarregar des del nostre dipòsit GitHub-Dcube Store.

Aquí teniu l’enllaç per al mateix:

github.com/DcubeTechVentures/MCP9805

El full de dades de MCP9805 es pot trobar aquí:

ww1.microchip.com/downloads/en/DeviceDoc/21…

Hem utilitzat la biblioteca pi4j per al codi Java; aquí es descriuen els passos per instal·lar pi4j al raspberry pi:

pi4j.com/install.html

També podeu copiar el codi des d’aquí, es dóna de la següent manera:

// Distribuïda amb llicència de lliure voluntat.

// Utilitzeu-lo de la manera que vulgueu, sense ànim de lucre o de franc, sempre que encaixi en les llicències de les obres associades.

// MCP9805

// Aquest codi està dissenyat per funcionar amb el mini mòdul MCP9808_I2CS I2C disponible a Dcube Store.

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

importació java.io. IOException;

classe pública MCP9805

{

public static void main (String args ) llança Excepció

{

// Crea un bus I2C

Bus I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);

// Obteniu un dispositiu I2C, l’adreça I2C MCP9805 és 0x18 (24)

I2CDevice device = Bus.getDevice (0x18);

Thread.sleep (300);

// Seleccioneu el registre de configuració

// Mode de conversió contínua, engegada

byte config = byte nou [2];

config [0] = 0x00;

config [1] = 0x00;

device.write (0x01, config, 0, 2);

// Selecciona rgister de resolució

// Resolució = +0,0625 / C

device.write (0x08, (byte) 0x03);

Thread.sleep (300);

// Llegir 2 bytes de dades de l'adreça 0x05 (05)

// temp msb, temp lsb

byte dades = byte nou [2];

device.read (0x05, dades, 0, 2);

// Converteix les dades a 13 bits

int temp = ((dades [0] i 0x1F) * 256 + (dades [1] i 0xFF));

si (temp> 4095)

{

temp - = 8192;

}

doble cTemp = temp * 0,0625;

doble fTemp = cTemp * 1,8 + 32;

// Sortiu les dades a la pantalla

System.out.printf ("La temperatura en centígrads és:%.2f C% n", cTemp);

System.out.printf ("La temperatura en Fahrenheit és:%.2f F% n", fTemp);

}

}

Pas 4: Aplicacions..:

MCP9805 es pot incorporar a diversos sistemes que inclouen sistemes de control de temperatura de mòduls de memòria en línia (DIMM), ordinadors personals i servidors. Normalment, es pot utilitzar com a sensor de temperatura per a usos generals.

Recomanat: