Talaan ng mga Nilalaman:

Raspberry Pi - PCA9536 Input / Output Expander Java Tutorial: 4 na Hakbang
Raspberry Pi - PCA9536 Input / Output Expander Java Tutorial: 4 na Hakbang

Video: Raspberry Pi - PCA9536 Input / Output Expander Java Tutorial: 4 na Hakbang

Video: Raspberry Pi - PCA9536 Input / Output Expander Java Tutorial: 4 na Hakbang
Video: Raspberry Pi PCA9536 Digital I/O Buzzer Java Tutorial 2024, Nobyembre
Anonim
Image
Image

Ang PCA9536 ay isang 8-pin na aparato ng CMOS na nagbibigay ng 4 na piraso ng pangkalahatang Pakay na parallel na Input / Output (GPIO) na pagpapalawak para sa mga aplikasyon ng I2C-bus / SMBus. Binubuo ito ng isang 4-bit na pagrehistro ng Configuration upang maihatid ang layunin ng pag-input o pagpili ng output, rehistro ng 4-bit na Input Port, rehistro ng 4-bit na Output Port at isang 4-bit na Pagrehistro ng Polarity Inversion na aktibo MATAAS o aktibong LOW na operasyon. Narito ang pagpapakita nito gamit ang raspberry pi gamit ang java code.

Hakbang 1: Ano ang Kailangan Mo.. !

Ang iyong kailangan..!!
Ang iyong kailangan..!!

1. Raspberry Pi

2. PCA9536

LINK:

3. I²C Cable

LINK:

4. I²C Shield para sa Raspberry Pi

LINK:

5. Ethernet Cable

Hakbang 2: Mga Koneksyon:

Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon

Kumuha ng isang kalasag I2C para sa raspberry pi at dahan-dahang itulak ito sa mga gpio pin ng raspberry pi.

Pagkatapos ikonekta ang isang dulo ng I2C cable sa PCA9536 sensor at ang iba pang mga dulo sa I2C kalasag.

Ikonekta din ang Ethernet cable sa pi o maaari kang gumamit ng isang module ng WiFi.

Ang mga koneksyon ay ipinapakita sa larawan sa itaas.

Hakbang 3: Code:

Code
Code

Ang java code para sa PCA9536 ay maaaring ma-download mula sa aming github repository- Dcube Store

Narito ang link para sa pareho:

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

Gumamit kami ng pi4j library para sa java code, ang mga hakbang upang mai-install ang pi4j sa raspberry pi ay inilarawan dito:

pi4j.com/install.html

Maaari mo ring kopyahin ang code mula dito, ibinibigay ito tulad ng sumusunod:

// Ipinamamahagi ng isang lisensyang malaya ang kalooban.

// Gumamit nito sa anumang paraan na nais mo, kumita o libre, naibigay na umaangkop ito sa mga lisensya ng mga nauugnay na gawa nito.

// PCA9536

// Ang code na ito ay dinisenyo upang gumana sa PCA9536_I2CIO I2C Mini Module na magagamit mula sa ControlEverything.com.

//

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

i-import ang java.io. IOException;

pampublikong klase PCA9536

{

public static void main (String args ) nagtatapon ng Exception

{

// Lumikha ng I2C bus

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

// Kumuha ng I2C device, ang address ng PCA9536 I2C ay 0x41 (65)

I2CDevice aparato = Bus.getDevice (0x41);

// Piliin ang rehistro ng pagsasaayos

// Lahat ng mga pin na naka-configure bilang mga input

aparato. magsulat (0x03, (byte) 0xFF);

// Output sa screen

System.out.printf ("Lahat ng Pins State ay MASAKI% n");

Thread.tulog (500);

// Basahin ang 1 byte ng data

byte data = bagong byte [1];

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

// I-convert ang data sa 4-bit

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

para sa (int i = 0; i <4; i ++)

{

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

{

System.out.printf ("I / O Pin% d Estado ay LOW% n", i);

}

iba pa

{

System.out.printf ("I / O Pin% d Estado ay MASAKI% n", i);

Thread.tulog (500);

}

}

}

}

Hakbang 4: Mga Aplikasyon:

Maaaring gamitin ang PCA9536 bilang isang expander ng I / O. Nagbibigay ito ng isang simpleng solusyon kapag kinakailangan ng karagdagang input / output. Karaniwan itong ginagamit sa mga system na nangangailangan ng pagpapalawak para sa mga switch ng kuryente ng ACPI, sensor, push button, LEDs, fan, atbp.

Inirerekumendang: