Mundarija:

Raspberry Pi MCP9805 harorat sensori Java darsligi: 4 qadam
Raspberry Pi MCP9805 harorat sensori Java darsligi: 4 qadam

Video: Raspberry Pi MCP9805 harorat sensori Java darsligi: 4 qadam

Video: Raspberry Pi MCP9805 harorat sensori Java darsligi: 4 qadam
Video: Raspberry Pi MCP9805 Temperature Sensor Java Tutorial 2024, Noyabr
Anonim
Image
Image

MCP9805 - bu xotira modulining raqamli harorat sensori. U haroratni sezish uchun moslashuvchanlikni ta'minlaydigan, foydalanuvchi tomonidan dasturlashtiriladigan registrlar bilan birlashtirilgan. Bu sensor mobil platformali xotira modulining harorat sensori bilan birlashtirilgan. Bu erda Raspberry Pi yordamida java kodli namoyish.

1 -qadam: Sizga nima kerak.. !

Sizga nima kerak.. !!
Sizga nima kerak.. !!

1. Raspberry Pi

2. MCP9805

3. I²C kabeli

4. Raspberry Pi uchun I²C qalqoni

5. Ethernet kabeli

2 -qadam: ulanishlar

Ulanishlar
Ulanishlar
Ulanishlar
Ulanishlar
Ulanishlar
Ulanishlar
Ulanishlar
Ulanishlar

Malinali pi uchun I2C qalqonini oling va uni malina pi gpio pimlariga sekin suring.

Keyin I2C kabelining bir uchini MCP9805 sensoriga, ikkinchi uchini esa I2C ekraniga ulang.

Ethernet kabelini pi -ga ulang yoki WiFi modulidan foydalanishingiz mumkin. Ulanishlar yuqoridagi rasmda ko'rsatilgan.

3 -qadam: kod

Kod
Kod

MCP9805 uchun java kodini bizning GitHub omboridan-Dcube do'konidan yuklab olish mumkin.

Mana shu havola:

github.com/DcubeTechVentures/MCP9805

MCP9805 ma'lumotlar jadvalini bu erda topish mumkin:

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

Biz Java kodi uchun pi4j kutubxonasidan foydalandik, malina pi ga pi4j o'rnatish bosqichlari bu erda tasvirlangan:

pi4j.com/install.html

Siz bu erdan kodni nusxalashingiz mumkin, u quyidagicha berilgan:

// Ixtiyoriy litsenziya bilan tarqatilgan.

// Agar xohlasangiz, foyda yoki tekin ishlating, agar u tegishli asarlar litsenziyalariga mos kelsa.

// MCP9805

// Bu kod Dcube do'konida mavjud MCP9808_I2CS I2C Mini moduli bilan ishlash uchun mo'ljallangan.

com.pi4j.io.i2c. I2CBus -ni import qilish;

com.pi4j.io.i2c. I2CDevice -ni import qilish;

com.pi4j.io.i2c. I2CFactory -ni import qilish;

java.io. IOException ni import qilish;

umumiy sinf MCP9805

{

public static void main (String args ) istisno qiladi

{

// I2C avtobusini yarating

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

// I2C qurilmasini oling, MCP9805 I2C manzili - 0x18 (24)

I2CDevice qurilmasi = Bus.getDevice (0x18);

Thread.sleep (300);

// Konfiguratsiya registrini tanlang

// Uzluksiz konvertatsiya rejimi, Quvvatlanish

bayt config = yangi bayt [2];

konfiguratsiya [0] = 0x00;

konfiguratsiya [1] = 0x00;

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

// Ro'yxatdan o'tish qarorini tanlang

// Qarori = +0.0625 / S

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

Thread.sleep (300);

// 0x05 (05) manzilidan 2 bayt ma'lumotni o'qing

// temp msb, temp lsb

bayt ma'lumotlar = yangi bayt [2];

device.read (0x05, ma'lumotlar, 0, 2);

// Ma'lumotni 13 bitga aylantiring

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

agar (harorat> 4095)

{

harorat -= 8192;

}

er -xotin cTemp = temp * 0.0625;

er -xotin fTemp = cTemp * 1.8 + 32;

// Ma'lumotni ekranga chiqarish

System.out.printf ("Selsiydagi harorat: %.2f C %n", cTemp);

System.out.printf ("Farengeytdagi harorat: %.2f F %n", fTemp);

}

}

4 -qadam: Ilovalar..:

MCP9805 har xil tizimlarga kiritilishi mumkin, ular ikki tomonlama xotira moduli (DIMM) haroratini kuzatish tizimlari, shaxsiy kompyuterlar va serverlarni o'z ichiga oladi. Odatda, u umumiy maqsadli harorat sensori sifatida ishlatilishi mumkin.

Tavsiya: