Indholdsfortegnelse:

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

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

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

PCA9536 er en 8-benet CMOS-enhed, der leverer 4 bit parallel indgang/udgang (GPIO) generel formål til I2C-bus/SMBus-applikationer. Det består af et 4-bit konfigurationsregister, der tjener formålet med input eller output valg, 4-bit Input Port register, 4-bit Output Port register og et 4-bit Polarity Inversion register aktivt HIGH eller aktiv LOW operation. Her er dens demonstration med hindbær pi ved hjælp af python -kode.

Trin 1: Hvad du har brug for..

Hvad du har brug for..!!
Hvad du har brug for..!!

1. Hindbær Pi

2. PCA9536

3. I²C -kabel

4. I²C Shield til Raspberry Pi

5. Ethernet -kabel

Trin 2: Forbindelser:

Tilslutninger
Tilslutninger
Tilslutninger
Tilslutninger
Tilslutninger
Tilslutninger
Tilslutninger
Tilslutninger

Tag et I2C -skjold til hindbærpi og skub det forsigtigt hen over gpio -benene på hindbærpi.

Tilslut derefter den ene ende af I2C -kablet til PCA9536 -sensoren og den anden ende til I2C -skærmen.

Tilslut også Ethernet -kablet til pi'en, eller du kan bruge et WiFi -modul.

Forbindelser er vist på billedet ovenfor.

Trin 3: Kode:

Kode
Kode

Python-koden til PCA9536 kan downloades fra vores github-depot- DCUBE Store.

Her er linket

Vi har brugt SMBus -bibliotek til python -kode, trinene til at installere SMBus på hindbær pi er beskrevet her:

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

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

# Distribueret med en fri vilje-licens.

# Brug den, som du vil, profit eller gratis, forudsat at den passer ind i licenserne til de tilhørende værker.

# PCA9536

# Denne kode er designet til at fungere med PCA9536_I2CIO I2C Mini Module #

import smbus

importtid

# Få I2C -bus

bus = smbus. SMBus (1)

# PCA9536 adresse, 0x41 (65)

# Vælg konfigurationsregister, 0x03 (03)

# 0xFF (255) Alle ben konfigureret som input

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

# Output til skærm

print "Alle stifter er høje"

time.sleep (0,5)

# PCA9536 adresse, 0x41 (65)

# Læs data tilbage fra 0x00 (00), 1 byte

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

# Konverter dataene til 4-bit

data = (data & 0x0F)

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

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

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

andet:

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

time.sleep (0,5)

Trin 4: Ansøgninger:

PCA9536 kan anvendes som en I/O -ekspander. Det giver en enkel løsning, når der kræves yderligere input/output. Normalt bruges det i systemer, der kræver udvidelse til ACPI -afbrydere, sensorer, trykknapper, lysdioder, ventilatorer osv.

Anbefalede: