Turinys:

„Raspberry Pi MCP9805“temperatūros jutiklio „Java“pamoka: 4 žingsniai
„Raspberry Pi MCP9805“temperatūros jutiklio „Java“pamoka: 4 žingsniai

Video: „Raspberry Pi MCP9805“temperatūros jutiklio „Java“pamoka: 4 žingsniai

Video: „Raspberry Pi MCP9805“temperatūros jutiklio „Java“pamoka: 4 žingsniai
Video: 1 pamoka - pažintis 2024, Lapkritis
Anonim
Image
Image

MCP9805 yra atminties modulio skaitmeninis temperatūros jutiklis. Jis įtrauktas į vartotojo programuojamus registrus, kurie suteikia lankstumo temperatūros jutikliams. Šis jutiklis skirtas integruoti į mobiliosios platformos atminties modulio temperatūros jutiklį. Štai demonstracija su „Java“kodu naudojant „Raspberry Pi“.

1 žingsnis: ko jums reikia..

Ko tau reikia..!!
Ko tau reikia..!!

1. Avietė Pi

2. MCP9805

3. I²C kabelis

4. „I²C Shield“, skirtas „Raspberry Pi“

5. Ethernet kabelis

2 žingsnis: jungtys

Sujungimai
Sujungimai
Sujungimai
Sujungimai
Sujungimai
Sujungimai
Sujungimai
Sujungimai

Paimkite aviečių pi I2C skydą ir švelniai stumkite jį virš aviečių pi gpio kaiščių.

Tada vieną I2C kabelio galą prijunkite prie MCP9805 jutiklio, o kitą - prie I2C skydo.

Taip pat prijunkite Ethernet kabelį prie pi arba galite naudoti „WiFi“modulį. Sujungimai parodyti aukščiau esančiame paveikslėlyje.

3 žingsnis: kodas

Kodas
Kodas

„MCP9805“„Java“kodą galima atsisiųsti iš mūsų „GitHub“saugyklos-„Dcube“parduotuvės.

Čia yra nuoroda į tą patį:

github.com/DcubeTechVentures/MCP9805

MCP9805 duomenų lapą rasite čia:

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

„Java“kodui naudojome „pi4j“biblioteką, čia aprašyti veiksmai, kaip įdiegti „pi4j“į aviečių pi:

pi4j.com/install.html

Taip pat galite nukopijuoti kodą iš čia, jis pateikiamas taip:

// Platinama su laisvos valios licencija.

// Naudokite bet kokiu būdu, pelningai ar nemokamai, jei jis atitinka susijusių darbų licencijas.

// MCP9805

// Šis kodas skirtas darbui su „MCP9808_I2CS I2C Mini“moduliu, kurį galima įsigyti „Dcube Store“.

importuoti com.pi4j.io.i2c. I2CBus;

importuoti com.pi4j.io.i2c. I2CDevice;

importuoti com.pi4j.io.i2c. I2CFactory;

importuoti java.io. IOException;

viešoji klasė MCP9805

{

public static void main (String args ) metimai Išimtis

{

// Sukurti I2C magistralę

I2CBus magistralė = I2CFactory.getInstance (I2CBus. BUS_1);

// Gauti I2C įrenginį, MCP9805 I2C adresas yra 0x18 (24)

I2CDevice device = Bus.getDevice (0x18);

Siūlai.miegoti (300);

// Pasirinkite konfigūracijos registrą

// Nuolatinio konvertavimo režimas, įjungimas

baitas konfigūracija = naujas baitas [2];

konfigūracija [0] = 0x00;

konfigūracija [1] = 0x00;

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

// Pasirinkite skiriamąją gebą rgister

// Rezoliucija = +0.0625 / C

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

Siūlai.miegoti (300);

// Skaityti 2 baitus duomenų iš adreso 0x05 (05)

// temp msb, temp lsb

baitas duomenys = naujas baitas [2];

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

// Konvertuokite duomenis į 13 bitų

int temp = ((duomenys [0] ir 0x1F) * 256 + (duomenys [1] ir 0xFF));

jei (temperatūra> 4095)

{

temperatūra -= 8192;

}

dvigubas cTemp = temp * 0,0625;

dvigubas fTemp = cTemp * 1,8 + 32;

// Išvesti duomenis į ekraną

System.out.printf ("Temperatūra Celsijaus laipsniais yra: %.2f C %n", cTemp);

System.out.printf ("Temperatūra Farenheitu yra: %.2f F %n", fTemp);

}

}

4 žingsnis: programos..:

MCP9805 gali būti integruotas į įvairias sistemas, kuriose yra dvigubos tiesioginės atminties modulio (DIMM) temperatūros stebėjimo sistemos, asmeniniai kompiuteriai ir serveriai. Paprastai jis gali būti naudojamas kaip bendros paskirties temperatūros jutiklis.

Rekomenduojamas: