Obsah:

Raspberry Pi MCP9805 Teplotní senzor Java Tutorial: 4 Steps
Raspberry Pi MCP9805 Teplotní senzor Java Tutorial: 4 Steps

Video: Raspberry Pi MCP9805 Teplotní senzor Java Tutorial: 4 Steps

Video: Raspberry Pi MCP9805 Teplotní senzor Java Tutorial: 4 Steps
Video: Linux Thread Programming on Raspberry PI/Ubuntu 2024, Červen
Anonim
Image
Image

MCP9805 je digitální teplotní senzor paměťového modulu. Je integrován s uživatelsky programovatelnými registry, které poskytují flexibilitu pro aplikace snímající teplotu. Tento senzor je navržen tak, aby byl integrován do teplotního senzoru paměťového modulu mobilní platformy. Zde je ukázka s kódem Java pomocí Raspberry Pi.

Krok 1: Co potřebujete..

Co potřebuješ..!!
Co potřebuješ..!!

1. Raspberry Pi

2. MCP9805

3. I²C kabel

4. I²C štít pro Raspberry Pi

5. Ethernetový kabel

Krok 2: Připojení

Připojení
Připojení
Připojení
Připojení
Připojení
Připojení
Připojení
Připojení

Vezměte I2C štít pro malinový pi a jemně jej zatlačte přes gpio piny malinového pi.

Poté připojte jeden konec kabelu I2C k senzoru MCP9805 a druhý konec ke stínění I2C.

Připojte také ethernetový kabel k pí nebo můžete použít modul WiFi. Připojení jsou znázorněna na obrázku výše.

Krok 3: Kód

Kód
Kód

Java kód pro MCP9805 lze stáhnout z našeho úložiště GitHub-Dcube Store.

Zde je odkaz na totéž:

github.com/DcubeTechVentures/MCP9805

Datasheet MCP9805 najdete zde:

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

Pro java kód jsme použili knihovnu pi4j, kroky k instalaci pi4j na malinový pi jsou popsány zde:

pi4j.com/install.html

Odtud můžete také zkopírovat kód, který je uveden následovně:

// Distribuováno s licencí svobodné vůle.

// Používejte jej jakýmkoli způsobem, ať už ziskem nebo zdarma, za předpokladu, že se vejde do licencí souvisejících děl.

// MCP9805

// Tento kód je navržen tak, aby fungoval s mini modulem MCP9808_I2CS I2C Mini dostupným v Dcube Store.

importovat com.pi4j.io.i2c. I2CBus;

importovat com.pi4j.io.i2c. I2CDevice;

importovat com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

veřejná třída MCP9805

{

public static void main (String args ) vyvolá výjimku

{

// Vytvoření sběrnice I2C

Sběrnice I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);

// Získejte zařízení I2C, adresa ICP MCP9805 je 0x18 (24)

I2CDevice zařízení = Bus.getDevice (0x18);

Thread.sleep (300);

// Vyberte konfigurační registr

// Režim nepřetržité konverze, zapnutí

byte config = nový byte [2];

config [0] = 0x00;

config [1] = 0x00;

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

// Vyberte rozlišení rgister

// Rozlišení = +0,0625 / C

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

Thread.sleep (300);

// Přečíst 2 bajty dat z adresy 0x05 (05)

// temp msb, temp lsb

byte data = nový byte [2];

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

// Převod dat na 13bitové

int temp = ((data [0] & 0x1F) * 256 + (data [1] & 0xFF));

pokud (teplota> 4095)

{

teplota -= 8192;

}

dvojnásobek cTemp = teplota * 0,0625;

zdvojnásobit fTemp = cTemp * 1,8 + 32;

// Výstup dat na obrazovku

System.out.printf ("Teplota ve stupních Celsia je: %.2f C %n", cTemp);

System.out.printf ("Teplota ve stupních Fahrenheita je: %.2f F %n", fTemp);

}

}

Krok 4: Aplikace..:

MCP9805 lze začlenit do různých systémů, které zahrnují systémy monitorování teploty duálního paměťového modulu (DIMM), osobní počítače a servery. Obvykle jej lze použít jako obecné teplotní čidlo.

Doporučuje: