Taula de continguts:

Raspberry Pi - Tutorial de Java d’expansió d’entrada / sortida PCA9536: 4 passos
Raspberry Pi - Tutorial de Java d’expansió d’entrada / sortida PCA9536: 4 passos

Vídeo: Raspberry Pi - Tutorial de Java d’expansió d’entrada / sortida PCA9536: 4 passos

Vídeo: Raspberry Pi - Tutorial de Java d’expansió d’entrada / sortida PCA9536: 4 passos
Vídeo: Experimenting with Java and Electronics on the Raspberry Pi 2024, Desembre
Anonim
Image
Image

El PCA9536 és un dispositiu CMOS de 8 pins que proporciona 4 bits d’expansió d’entrada / sortida (GPIO) en paral·lel per a usos generals per a aplicacions de bus I2C / SMBus. Consisteix en un registre de configuració de 4 bits per servir a la selecció d’entrada o sortida, registre de ports d’entrada de 4 bits, registre de ports de sortida de 4 bits i un registre d’inversió de polaritat de 4 bits actiu ALTA o baixa operació activa. Aquí teniu la demostració amb el raspberry pi mitjançant el codi Java.

Pas 1: el que necessiteu..

Què necessites..!!
Què necessites..!!

1. Raspberry Pi

2. PCA9536

ENLLAÇ:

3. Cable I²C

ENLLAÇ:

4. Escut I²C per a Raspberry Pi

ENLLAÇ:

5. Cable Ethernet

Pas 2: connexions:

Connexions
Connexions
Connexions
Connexions
Connexions
Connexions
Connexions
Connexions

Agafeu un escut I2C per a raspberry pi i passeu-lo suaument per sobre dels pins gpio de raspberry pi.

A continuació, connecteu un extrem del cable I2C al sensor PCA9536 i l’altre extrem a l’escut I2C.

Connecteu també el cable Ethernet al pi o podeu utilitzar un mòdul WiFi.

Les connexions es mostren a la imatge superior.

Pas 3: Codi:

Codi
Codi

El codi Java per a PCA9536 es pot descarregar des del nostre repositori de github - Dcube Store

Aquí teniu l’enllaç per al mateix:

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

Hem utilitzat la biblioteca pi4j per al codi Java; aquí es descriuen els passos per instal·lar pi4j al raspberry pi:

pi4j.com/install.html

També podeu copiar el codi des d’aquí, es dóna de la següent manera:

// Distribuïda amb llicència de lliure voluntat.

// Utilitzeu-lo de la manera que vulgueu, sense ànim de lucre o de franc, sempre que encaixi en les llicències de les obres associades.

// PCA9536

// Aquest codi està dissenyat per funcionar amb el mini mòdul PCA9536_I2CIO I2C disponible a ControlEverything.com.

//

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

importació java.io. IOException;

classe pública PCA9536

{

public static void main (String args ) llança Excepció

{

// Crea un bus I2C

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

// Obteniu un dispositiu I2C, l'adreça PCA9536 I2C és 0x41 (65)

I2CDevice device = Bus.getDevice (0x41);

// Seleccioneu el registre de configuració

// Tots els pins configurats com a entrades

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

// Sortida a la pantalla

System.out.printf ("Tots els pins estan ALT% n");

Thread.sleep (500);

// Llegiu 1 byte de dades

byte dades = byte nou [1];

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

// Converteix les dades a 4 bits

int data1 = (dades [0] i 0x0F);

per a (int i = 0; i <4; i ++)

{

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

{

System.out.printf ("l'estat del pin% d d'E / S és BAIX% n", i);

}

en cas contrari

{

System.out.printf ("l'estat del pin% d d'E / S és ALT% n", i);

Thread.sleep (500);

}

}

}

}

Pas 4: aplicacions:

El PCA9536 es pot utilitzar com a expansor d'E / S. Proporciona una solució senzilla quan es necessita una entrada / sortida addicional. Normalment s’utilitza en sistemes que requereixen una expansió per a interruptors d’alimentació ACPI, sensors, polsadors, LED, ventiladors, etc.

Recomanat: