Inhaltsverzeichnis:

Raspberry Pi - PCA9536 Input/Output Expander Java Tutorial - Gunook
Raspberry Pi - PCA9536 Input/Output Expander Java Tutorial - Gunook

Video: Raspberry Pi - PCA9536 Input/Output Expander Java Tutorial - Gunook

Video: Raspberry Pi - PCA9536 Input/Output Expander Java Tutorial - Gunook
Video: Raspberry Pi PCA9536 Digital I/O Buzzer Java Tutorial 2024, Juli
Anonim
Image
Image

Der PCA9536 ist ein 8-Pin-CMOS-Baustein, der 4 Bits an paralleler Universal-Ein-/Ausgabe-Erweiterung (GPIO) für I2C-Bus/SMBus-Anwendungen bereitstellt. Es besteht aus einem 4-Bit-Konfigurationsregister, das der Auswahl des Eingangs oder Ausgangs dient, einem 4-Bit-Eingangsport-Register, einem 4-Bit-Ausgangsport-Register und einem 4-Bit-Polaritätsumkehrregister für aktive HIGH- oder aktive LOW-Operation. Hier ist seine Demonstration mit dem Himbeer-Pi mit Java-Code.

Schritt 1: Was Sie brauchen.

Was du brauchst..!!
Was du brauchst..!!

1. Himbeer-Pi

2. PCA9536

LINK:

3. I²C-Kabel

LINK:

4. I²C-Shield für Raspberry Pi

LINK:

5. Ethernet-Kabel

Schritt 2: Anschlüsse:

Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse

Nehmen Sie ein I2C-Schild für Himbeer-Pi und schieben Sie es vorsichtig über die gpio-Pins von Himbeer-Pi.

Verbinden Sie dann das eine Ende des I2C-Kabels mit dem PCA9536-Sensor und das andere Ende mit der I2C-Abschirmung.

Verbinden Sie auch das Ethernet-Kabel mit dem Pi oder verwenden Sie ein WiFi-Modul.

Die Anschlüsse sind im Bild oben dargestellt.

Schritt 3: Code:

Code
Code

Der Java-Code für PCA9536 kann von unserem Github-Repository heruntergeladen werden - Dcube Store

Hier der Link dazu:

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

Wir haben die pi4j-Bibliothek für Java-Code verwendet, die Schritte zur Installation von pi4j auf Raspberry Pi sind hier beschrieben:

pi4j.com/install.html

Sie können den Code auch von hier kopieren, er wird wie folgt angegeben:

// Wird mit einer frei wählbaren Lizenz vertrieben.

// Verwenden Sie es, wie Sie wollen, gewinnbringend oder kostenlos, sofern es in die Lizenzen der zugehörigen Werke passt.

// PCA9536

// Dieser Code wurde entwickelt, um mit dem PCA9536_I2CIO I2C Mini-Modul zu arbeiten, das von ControlEverything.com erhältlich ist.

//

com.pi4j.io.i2c. I2CBus importieren;

com.pi4j.io.i2c. I2CDevice importieren;

com.pi4j.io.i2c. I2CFactory importieren;

import java.io. IOException;

öffentliche Klasse PCA9536

{

public static void main(String args) löst Ausnahme aus

{

// I2C-Bus erstellen

I2CBus-Bus = I2CFactory.getInstance(I2CBus. BUS_1);

// I2C-Gerät abrufen, PCA9536 I2C-Adresse ist 0x41(65)

I2CDevice-Gerät = Bus.getDevice(0x41);

// Konfigurationsregister auswählen

// Alle Pins als Eingänge konfiguriert

device.write(0x03, (Byte)0xFF);

// Ausgabe auf Bildschirm

System.out.printf("All Pins State are HIGH %n");

Thread.sleep(500);

// 1 Byte Daten lesen

Byte Daten = neues Byte[1];

data[0] = (byte)device.read(0x00);

// Konvertieren Sie die Daten in 4-Bits

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

for(int i=0; i<4; i++)

{

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

{

System.out.printf("I/O-Pin %d Status ist LOW %n", i);

}

anders

{

System.out.printf("I/O-Pin %d Status ist HIGH %n", i);

Thread.sleep(500);

}

}

}

}

Schritt 4: Anwendungen:

PCA9536 kann als E/A-Erweiterung verwendet werden. Es bietet eine einfache Lösung, wenn zusätzliche Eingabe/Ausgabe erforderlich ist. Normalerweise wird es in Systemen verwendet, die eine Erweiterung für ACPI-Leistungsschalter, Sensoren, Taster, LEDs, Lüfter usw. erfordern.

Empfohlen: