Innehållsförteckning:

Raspberry Pi - PCA9536 Input/output Expander Python Handledning: 4 steg
Raspberry Pi - PCA9536 Input/output Expander Python Handledning: 4 steg

Video: Raspberry Pi - PCA9536 Input/output Expander Python Handledning: 4 steg

Video: Raspberry Pi - PCA9536 Input/output Expander Python Handledning: 4 steg
Video: Non-Contact Long Range MLX90614-DCI Temperature Sensor with Arduino 2024, Juli
Anonim
Image
Image

PCA9536 är en 8-stifts CMOS-enhet som tillhandahåller 4 bitars allmän inmatning/utgång (GPIO) expansion för I2C-bus/SMBus-applikationer. Den består av ett 4-bitars konfigurationsregister för att tjäna syftet med ingångs- eller utgångsval, 4-bitars ingångsportregister, 4-bitars utgångsportregister och ett 4-bitars polaritetsinversionsregister aktivt HIGH eller aktiv LOW-drift. Här är dess demonstration med hallon pi med hjälp av pythonkod.

Steg 1: Vad du behöver.. !

Vad du behöver..!!
Vad du behöver..!!

1. Hallon Pi

2. PCA9536

3. I²C -kabel

4. I²C -sköld för Raspberry Pi

5. Ethernet -kabel

Steg 2: Anslutningar:

Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar

Ta en I2C -sköld för hallonpi och tryck den försiktigt över gpio -stiften på hallonpi.

Anslut sedan den ena änden av I2C -kabeln till PCA9536 -sensorn och den andra änden till I2C -skärmen.

Anslut också Ethernet -kabeln till pi eller så kan du använda en WiFi -modul.

Anslutningar visas på bilden ovan.

Steg 3: Kod:

Koda
Koda

Pythonkoden för PCA9536 kan laddas ner från vårt github-arkiv- DCUBE Store.

Här är länken

Vi har använt SMBus -biblioteket för pythonkod, stegen för att installera SMBus på hallon pi beskrivs här:

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

Du kan också kopiera koden härifrån, den ges enligt följande:

# Distribueras med en fri vilja licens.

# Använd det hur du vill, vinst eller gratis, förutsatt att det passar i licensen för dess associerade verk.

# PCA9536

# Denna kod är utformad för att fungera med PCA9536_I2CIO I2C Mini Module #

importera smbus

importtid

# Skaffa I2C -buss

buss = smbus. SMBus (1)

# PCA9536 -adress, 0x41 (65)

# Välj konfigurationsregister, 0x03 (03)

# 0xFF (255) Alla stift konfigurerade som ingångar

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

# Utmatning till skärmen

print "Alla pins är höga"

tid. sover (0,5)

# PCA9536 -adress, 0x41 (65)

# Läs data tillbaka från 0x00 (00), 1 byte

data = buss.läs_byte_data (0x41, 0x00)

# Konvertera data till 4-bitar

data = (data & 0x0F)

för i inom intervallet (0, 4):

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

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

annat:

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

tid. sover (0,5)

Steg 4: Ansökningar:

PCA9536 kan användas som en I/O -expander. Det ger en enkel lösning när ytterligare input/output krävs. Vanligtvis används den i system som kräver expansion för ACPI -strömbrytare, sensorer, tryckknappar, lysdioder, fläktar etc.

Rekommenderad: