תוכן עניינים:

Raspberry Pi MCP9805 חיישן טמפרטורה Java הדרכה: 4 שלבים
Raspberry Pi MCP9805 חיישן טמפרטורה Java הדרכה: 4 שלבים

וִידֵאוֹ: Raspberry Pi MCP9805 חיישן טמפרטורה Java הדרכה: 4 שלבים

וִידֵאוֹ: Raspberry Pi MCP9805 חיישן טמפרטורה Java הדרכה: 4 שלבים
וִידֵאוֹ: Объяснение прошивки Marlin 2.0.x 2024, נוֹבֶמבֶּר
Anonim
Image
Image

MCP9805 הוא חיישן טמפרטורה דיגיטלי של מודול זיכרון. הוא משולב עם רישומים הניתנים לתכנות למשתמשים המספקים גמישות ליישומים לחישת טמפרטורה. חיישן זה נועד להשתלב בחיישן הטמפרטורה של מודול הזיכרון של הפלטפורמה הניידת. להלן ההדגמה עם קוד ג'אווה באמצעות פטל פטל.

שלב 1: מה שאתה צריך..

מה אתה צריך..!!
מה אתה צריך..!!

1. פטל פטל

2. MCP9805

3. כבל I²C

4. מגן I²C עבור פטל פטל

5. כבל אתרנט

שלב 2: חיבורים

חיבורים
חיבורים
חיבורים
חיבורים
חיבורים
חיבורים
חיבורים
חיבורים

קח מגן I2C לפאי פטל ודחוף אותו בעדינות מעל סיכות ה- gpio של פטל פאי.

לאחר מכן חבר את הקצה האחד של כבל I2C לחיישן MCP9805 והקצה השני למגן I2C.

חבר גם את כבל ה- Ethernet ל- pi או שאתה יכול להשתמש במודול WiFi. חיבורים מוצגים בתמונה למעלה.

שלב 3: קוד

קוד
קוד

ניתן להוריד את קוד java עבור MCP9805 מחנות GitHub שלנו-Dcube Store.

להלן הקישור לאותו דבר:

github.com/DcubeTechVentures/MCP9805

את גליון הנתונים של MCP9805 ניתן למצוא כאן:

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

השתמשנו בספריית pi4j עבור קוד java, השלבים להתקנת pi4j ב- pi פטל מתוארים כאן:

pi4j.com/install.html

אתה יכול גם להעתיק את הקוד מכאן, הוא ניתן כדלקמן:

// מופץ ברישיון רצון חופשי.

// השתמש בו בכל דרך שתרצה, ברווח או בחינם, בתנאי שהוא מתאים לרישיונות של העבודות הקשורות בו.

// MCP9805

// קוד זה נועד לעבוד עם מודול מיני MCP9808_I2CS I2C הזמין בחנות Dcube.

ייבא com.pi4j.io.i2c. I2CBus;

ייבא com.pi4j.io.i2c. I2CDevice;

יבוא com.pi4j.io.i2c. I2CFactory;

יבוא java.io. IOException;

מעמד ציבורי MCP9805

{

פוסט סטטי ציבורי ריק (String args ) זורק חריגה

{

// צור אוטובוס I2C

אוטובוס I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);

// קבל מכשיר I2C, כתובת I2C MCP9805 היא 0x18 (24)

מכשיר I2CDevice = Bus.getDevice (0x18);

Thread.sleep (300);

// בחר רשם תצורה

// מצב המרה רציף, הפעלה

בייט config = בייט חדש [2];

config [0] = 0x00;

config [1] = 0x00;

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

// בחר רזולוציית רזולוציה

// רזולוציה = +0.0625 / C

device.write (0x08, (בייט) 0x03);

Thread.sleep (300);

// קרא 2 בתים של נתונים מהכתובת 0x05 (05)

// זמני msb, temp lsb

בייט נתונים = בייט חדש [2];

device.read (0x05, נתונים, 0, 2);

// המר את הנתונים ל -13 סיביות

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

אם (טמפ '> 4095)

{

טמפ ' -= 8192;

}

cTemp כפול = טמפ ' * 0.0625;

כפול fTemp = cTemp * 1.8 + 32;

// נתוני פלט למסך

System.out.printf ("הטמפרטורה בצלזיוס היא: %.2f C %n", cTemp);

System.out.printf ("הטמפרטורה בפרנהייט היא: %.2f F %n", fTemp);

}

}

שלב 4: יישומים..:

ניתן לשלב MCP9805 במערכות שונות הכוללות מערכות ניטור טמפרטורות כפולות (DIMM) כפולות, מחשבים אישיים ושרתים. בדרך כלל, זה יכול לשמש כחיישן טמפרטורה למטרות כלליות.

מוּמלָץ: