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

Raspberry Pi - PCA9536 הרחבת קלט/פלט Java הדרכה: 4 שלבים
Raspberry Pi - PCA9536 הרחבת קלט/פלט Java הדרכה: 4 שלבים

וִידֵאוֹ: Raspberry Pi - PCA9536 הרחבת קלט/פלט Java הדרכה: 4 שלבים

וִידֵאוֹ: Raspberry Pi - PCA9536 הרחבת קלט/פלט Java הדרכה: 4 שלבים
וִידֵאוֹ: ESP32 Tutorial 3 - Resistor, LED, Bredboard and First Project: Hello LED -ESP32 IoT Learnig kit 2024, נוֹבֶמבֶּר
Anonim
Image
Image

ה- PCA9536 הוא מכשיר CMOS בעל 8 פינים המספק 4 סיביות הרחבה של כניסת/פלט מקבילה למטרות כלליות ליישומי I2C-bus/SMBus. הוא מורכב מרשם תצורה של 4 סיביות לשרת את מטרת הבחירה של קלט או פלט, רגיסט יציאת קלט של 4 סיביות, מאגר יציאות פלט של 4 סיביות ומאגר היפוך קוטביות של 4 סיביות פעיל HIGH או פעיל LOW פעיל. להלן ההדגמה שלו עם פטל הפטל באמצעות קוד ג'אווה.

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

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

1. פטל פטל

2. PCA9536

קישור:

3. כבל I²C

קישור:

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

קישור:

5. כבל אתרנט

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

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

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

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

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

חיבורים מוצגים בתמונה למעלה.

שלב 3: קוד:

קוד
קוד

ניתן להוריד את קוד ה- Java עבור PCA9536 ממאגר github שלנו- חנות Dcube

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

github.com/DcubeTechVentures/PCA9536/blob/master/Java/PCA9536.java

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

pi4j.com/install.html

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

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

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

// PCA9536

// קוד זה נועד לעבודה עם מודול מיני PCA9536_I2CIO I2C הזמין ב- ControlEverything.com.

//

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

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

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

יבוא java.io. IOException;

מעמד ציבורי PCA9536

{

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

{

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

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

// קבל מכשיר I2C, כתובת IAC PCA9536 היא 0x41 (65)

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

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

// כל הסיכות מוגדרות ככניסות

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

// פלט למסך

System.out.printf ("כל מצב הסיכות גבוה %n");

Thread.sleep (500);

// קרא 1 בייט של נתונים

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

data [0] = (בייט) device.read (0x00);

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

int data1 = (data [0] & 0x0F);

עבור (int i = 0; i <4; i ++)

{

אם ((data1 & ((int) Math.pow (2, i))) == 0)

{

System.out.printf ("מצב I/O Pin %d מצב נמוך %n", i);

}

אַחֵר

{

System.out.printf ("מצב I/O Pin %d מצב הוא %n גבוה", i);

Thread.sleep (500);

}

}

}

}

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

ניתן להשתמש ב- PCA9536 כמרחיב קלט/פלט. הוא מספק פתרון פשוט כאשר יש צורך בקלט/פלט נוספים. בדרך כלל הוא מועסק במערכות הדורשות הרחבה עבור מתגי מתח ACPI, חיישנים, כפתורי לחיצה, נוריות LED, מאווררים וכו '.

מוּמלָץ: