Innholdsfortegnelse:

Raspberry Pi - PCA9536 Input/output Expander Python Tutorial: 4 trinn
Raspberry Pi - PCA9536 Input/output Expander Python Tutorial: 4 trinn

Video: Raspberry Pi - PCA9536 Input/output Expander Python Tutorial: 4 trinn

Video: Raspberry Pi - PCA9536 Input/output Expander Python Tutorial: 4 trinn
Video: Raspberry Pi PCA9536 Digital I/O Buzzer Python Tutorial 2024, Juli
Anonim
Image
Image

PCA9536 er en 8-pinners CMOS-enhet som gir 4 bits parallell inngang/utgang (GPIO) generell bruk for I2C-buss/SMBus-applikasjoner. Den består av et 4-bits konfigurasjonsregister for å tjene formålet med input eller output-valg, 4-bit Input Port-register, 4-bit Output Port-register og et 4-bits Polarity Inversion-register aktivt HIGH eller aktiv LOW-operasjon. Her er demonstrasjonen med bringebær pi ved hjelp av python -kode.

Trinn 1: Hva du trenger..

Hva trenger du..!!
Hva trenger du..!!

1. Bringebær Pi

2. PCA9536

3. I²C -kabel

4. I²C Shield for Raspberry Pi

5. Ethernet -kabel

Trinn 2: Tilkoblinger:

Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger

Ta et I2C -skjold for bringebærpi og skyv det forsiktig over gpio -pinnene til bringebærpi.

Koble deretter den ene enden av I2C -kabelen til PCA9536 -sensoren og den andre enden til I2C -skjoldet.

Koble også Ethernet -kabelen til pi eller du kan bruke en WiFi -modul.

Tilkoblinger er vist på bildet ovenfor.

Trinn 3: Kode:

Kode
Kode

Python-koden for PCA9536 kan lastes ned fra vårt github-depot- DCUBE Store.

Her er lenken

Vi har brukt SMBus bibliotek for python -kode, trinnene for å installere SMBus på bringebær pi er beskrevet her:

pypi.python.org/pypi/smbus-cffi/0.5.1

Du kan også kopiere koden herfra, den er gitt som følger:

# Distribuert med en fri viljelisens.

# Bruk den slik du vil, profitt eller gratis, forutsatt at den passer inn i lisensene til de tilhørende verkene.

# PCA9536

# Denne koden er designet for å fungere med PCA9536_I2CIO I2C Mini Module #

importer smbus

importtid

# Få I2C -buss

buss = smbus. SMBus (1)

# PCA9536 adresse, 0x41 (65)

# Velg konfigurasjonsregister, 0x03 (03)

# 0xFF (255) Alle pinner konfigurert som innganger

bus.write_byte_data (0x41, 0x03, 0xFF)

# Utgang til skjermen

print "All Pins State is HIGH"

time.sleep (0,5)

# PCA9536 adresse, 0x41 (65)

# Les data tilbake fra 0x00 (00), 1 byte

data = bus.read_byte_data (0x41, 0x00)

# Konverter dataene til 4-bits

data = (data & 0x0F)

for i i området (0, 4):

hvis (data & (2 ** i)) == 0:

print "I/O Pin %d State is LOW" %i

annet:

print "I/O Pin %d State is HIGH" %i

time.sleep (0,5)

Trinn 4: Søknader:

PCA9536 kan brukes som en I/O -ekspander. Det gir en enkel løsning når det er nødvendig med ytterligere input/output. Vanligvis brukes den i systemer som krever utvidelse for ACPI -strømbrytere, sensorer, trykknapper, lysdioder, vifter, etc.

Anbefalt: