Spisu treści:

Raspberry Pi - PCA9536 Ekspander wejść/wyjść Samouczek Java: 4 kroki
Raspberry Pi - PCA9536 Ekspander wejść/wyjść Samouczek Java: 4 kroki

Wideo: Raspberry Pi - PCA9536 Ekspander wejść/wyjść Samouczek Java: 4 kroki

Wideo: Raspberry Pi - PCA9536 Ekspander wejść/wyjść Samouczek Java: 4 kroki
Wideo: Raspberry Pi PCA9536 Digital I/O Buzzer Java Tutorial 2024, Lipiec
Anonim
Image
Image

PCA9536 to 8-pinowe urządzenie CMOS, które zapewnia 4-bitowe rozszerzenie równoległego wejścia/wyjścia (GPIO) ogólnego przeznaczenia dla aplikacji I2C-bus/SMBus. Składa się z 4-bitowego rejestru konfiguracyjnego służącego do wyboru wejścia lub wyjścia, 4-bitowego rejestru portu wejściowego, 4-bitowego rejestru portu wyjściowego i 4-bitowego rejestru odwrócenia polaryzacji aktywnej operacji HIGH lub aktywnej LOW. Oto jego demonstracja z raspberry pi przy użyciu kodu java.

Krok 1: Czego potrzebujesz.

Czego potrzebujesz..!!
Czego potrzebujesz..!!

1. Raspberry Pi

2. PCA9536

LINK:

3. Kabel I²C

LINK:

4. Osłona I²C dla Raspberry Pi

LINK:

5. Kabel Ethernet

Krok 2: Połączenia:

Znajomości
Znajomości
Znajomości
Znajomości
Znajomości
Znajomości
Znajomości
Znajomości

Weź nakładkę I2C dla raspberry pi i delikatnie nałóż ją na piny gpio raspberry pi.

Następnie podłącz jeden koniec kabla I2C do czujnika PCA9536, a drugi koniec do ekranu I2C.

Podłącz również kabel Ethernet do pi lub możesz użyć modułu WiFi.

Połączenia prezentuje powyższy obrazek.

Krok 3: Kod:

Kod
Kod

Kod java dla PCA9536 można pobrać z naszego repozytorium github – sklep Dcube

Oto link do tego samego:

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

Użyliśmy biblioteki pi4j do kodu java, kroki instalacji pi4j na raspberry pi są opisane tutaj:

pi4j.com/install.html

Możesz również skopiować kod stąd, jest on podany w następujący sposób:

// Rozprowadzane z wolną licencją.

// Używaj go w dowolny sposób, z zyskiem lub za darmo, pod warunkiem, że pasuje do licencji powiązanych z nim dzieł.

// PCA9536

// Ten kod jest przeznaczony do współpracy z minimodułem PCA9536_I2CIO I2C dostępnym na stronie ControlEverything.com.

//

importuj com.pi4j.io.i2c. I2CBus;

importuj com.pi4j.io.i2c. I2CDurządzenie;

importuj com.pi4j.io.i2c. I2CFabryka;

import java.io. IOException;

klasa publiczna PCA9536

{

public static void main(String args) wyrzuca Wyjątek

{

// Utwórz magistralę I2C

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

// Pobierz urządzenie I2C, adres PCA9536 I2C to 0x41(65)

Urządzenie I2CDevice = Bus.getDevice(0x41);

// Wybierz rejestr konfiguracji

// Wszystkie piny skonfigurowane jako wejścia

urządzenie.write(0x03, (bajt)0xFF);

// Wyjście na ekran

System.out.printf("stan wszystkich pinów jest WYSOKI %n");

Wątek.sen(500);

// Odczytaj 1 bajt danych

bajt dane = nowy bajt[1];

dane[0] = (bajt)urządzenie.odczyt(0x00);

// Konwertuj dane na 4-bity

int dane1 = (dane[0] i 0x0F);

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

{

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

{

System.out.printf("I/O Pin %d Stan jest NISKI %n", i);

}

w przeciwnym razie

{

System.out.printf("I/O Pin %d stan jest WYSOKI %n", i);

Wątek.sen(500);

}

}

}

}

Krok 4: Aplikacje:

PCA9536 może być wykorzystany jako ekspander we/wy. Zapewnia proste rozwiązanie, gdy wymagane są dodatkowe wejścia/wyjścia. Zwykle jest stosowany w systemach wymagających rozbudowy o wyłączniki zasilania ACPI, czujniki, przyciski, diody LED, wentylatory itp.

Zalecana: