Inhoudsopgave:

Raspberry Pi - PCA9536 Input/Output Expander Java-zelfstudie - Ajarnpa
Raspberry Pi - PCA9536 Input/Output Expander Java-zelfstudie - Ajarnpa

Video: Raspberry Pi - PCA9536 Input/Output Expander Java-zelfstudie - Ajarnpa

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

De PCA9536 is een 8-pins CMOS-apparaat dat 4 bits General Purpose parallelle Input/Output (GPIO)-uitbreiding biedt voor I2C-bus/SMBus-toepassingen. Het bestaat uit een 4-bits configuratieregister om de invoer- of uitvoerselectie te dienen, een 4-bits invoerpoortregister, een 4-bits uitvoerpoortregister en een 4-bit polariteitsinversieregister actief HOOG of actief LAAG. Hier is de demonstratie met de Raspberry Pi met behulp van Java-code.

Stap 1: Wat je nodig hebt.

Wat je nodig hebt..!!
Wat je nodig hebt..!!

1. Raspberry Pi

2. PCA9536

LINK:

3. I²C-kabel

LINK:

4. I²C-schild voor Raspberry Pi

LINK:

5. Ethernet-kabel

Stap 2: Aansluitingen:

Aansluitingen
Aansluitingen
Aansluitingen
Aansluitingen
Aansluitingen
Aansluitingen
Aansluitingen
Aansluitingen

Neem een I2C-schild voor Raspberry Pi en duw het voorzichtig over de gpio-pinnen van Raspberry Pi.

Sluit vervolgens het ene uiteinde van de I2C-kabel aan op de PCA9536-sensor en het andere uiteinde op de I2C-afscherming.

Sluit ook de Ethernet-kabel aan op de pi of u kunt een WiFi-module gebruiken.

De aansluitingen zijn weergegeven in de afbeelding hierboven.

Stap 3: Coderen:

Code
Code

De java-code voor PCA9536 kan worden gedownload van onze github-repository - Dcube Store

Hier is de link voor hetzelfde:

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

We hebben de pi4j-bibliotheek gebruikt voor java-code, de stappen om pi4j op raspberry pi te installeren worden hier beschreven:

pi4j.com/install.html

U kunt de code ook hier kopiëren, deze wordt als volgt gegeven:

// Gedistribueerd met een vrije wilslicentie.

// Gebruik het zoals je wilt, winst of gratis, op voorwaarde dat het past in de licenties van de bijbehorende werken.

// PCA9536

// Deze code is ontworpen om te werken met de PCA9536_I2CIO I2C Mini Module die verkrijgbaar is bij ControlEverything.com.

//

com.pi4j.io.i2c. I2CBus importeren;

com.pi4j.io.i2c. I2CDevice importeren;

importeer com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

openbare klasse PCA9536

{

public static void main(String args) gooit Exception

{

// I2C-bus maken

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

// Krijg I2C-apparaat, PCA9536 I2C-adres is 0x41 (65)

I2CDevice-apparaat = Bus.getDevice (0x41);

// Selecteer configuratieregister

// Alle pinnen geconfigureerd als ingangen

apparaat.write(0x03, (byte)0xFF);

// Uitvoer naar scherm

System.out.printf("Alle pinnen zijn HOOG %n");

Draad.slaap(500);

// Lees 1 byte aan gegevens

byte data = nieuwe byte[1];

data[0] = (byte)apparaat.lezen(0x00);

// Converteer de gegevens naar 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 is LAAG %n", i);

}

anders

{

System.out.printf("I/O Pin %d Status is HOOG %n", i);

Draad.slaap(500);

}

}

}

}

Stap 4: Toepassingen:

PCA9536 kan worden gebruikt als I/O-uitbreiding. Het biedt een eenvoudige oplossing wanneer extra input/output nodig is. Meestal wordt het gebruikt in systemen die uitbreiding vereisen voor ACPI-stroomschakelaars, sensoren, drukknoppen, LED's, ventilatoren, enz.

Aanbevolen: