Πίνακας περιεχομένων:

Raspberry Pi - PCA9536 Είσοδος/έξοδος Expander Python Tutorial: 4 Βήματα
Raspberry Pi - PCA9536 Είσοδος/έξοδος Expander Python Tutorial: 4 Βήματα

Βίντεο: Raspberry Pi - PCA9536 Είσοδος/έξοδος Expander Python Tutorial: 4 Βήματα

Βίντεο: Raspberry Pi - PCA9536 Είσοδος/έξοδος Expander Python Tutorial: 4 Βήματα
Βίντεο: CS50 2014 – 7-я неделя 2024, Ιούλιος
Anonim
Image
Image

Το PCA9536 είναι μια συσκευή CMOS 8 ακίδων που παρέχει 4 bits παράλληλης εισόδου/εξόδου γενικού σκοπού (GPIO) για εφαρμογές I2C-bus/SMBus. Αποτελείται από έναν καταχωρητή διαμόρφωσης 4-bit για την εξυπηρέτηση του σκοπού της επιλογής εισόδου ή εξόδου, καταχωρητή θύρας εισόδου 4-bit, καταχωρητή θύρας εξόδου 4-bit και έναν καταχωρητή αντιστροφής πολικότητας 4-bit ενεργό HIGH ή ενεργό LOW λειτουργία. Εδώ είναι η επίδειξή του με το raspberry pi χρησιμοποιώντας κώδικα python.

Βήμα 1: Αυτό που χρειάζεστε..

Ο, τι χρειάζεσαι..!!
Ο, τι χρειάζεσαι..!!

1. Raspberry Pi

2. PCA9536

3. Καλώδιο I²C

4. I²C Shield για το Raspberry Pi

5. Καλώδιο Ethernet

Βήμα 2: Συνδέσεις:

Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις

Πάρτε μια ασπίδα I2C για raspberry pi και σπρώξτε την απαλά πάνω από τις καρφίτσες gpio του raspberry pi.

Στη συνέχεια, συνδέστε το ένα άκρο του καλωδίου I2C στον αισθητήρα PCA9536 και το άλλο άκρο στην ασπίδα I2C.

Συνδέστε επίσης το καλώδιο Ethernet στο pi ή μπορείτε να χρησιμοποιήσετε μια μονάδα WiFi.

Οι συνδέσεις φαίνονται στην παραπάνω εικόνα.

Βήμα 3: Κωδικός:

Κώδικας
Κώδικας

Μπορείτε να κατεβάσετε τον κώδικα python για το PCA9536 από το αποθετήριο github- DCUBE Store.

Ορίστε ο σύνδεσμος

Έχουμε χρησιμοποιήσει τη βιβλιοθήκη SMBus για κώδικα python, τα βήματα για την εγκατάσταση του SMBus στο raspberry pi περιγράφονται εδώ:

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

Μπορείτε επίσης να αντιγράψετε τον κώδικα από εδώ, δίνεται ως εξής:

# Διανέμεται με άδεια ελεύθερης βούλησης.

# Χρησιμοποιήστε το με όποιον τρόπο θέλετε, κερδοφόρα ή δωρεάν, υπό την προϋπόθεση ότι ταιριάζει στις άδειες των σχετικών έργων του.

# PCA9536

# Αυτός ο κώδικας έχει σχεδιαστεί για να λειτουργεί με το PCA9536_I2CIO I2C Mini Module #

εισαγωγή smbus

χρόνο εισαγωγής

# Πάρτε το λεωφορείο I2C

bus = smbus. SMBus (1)

# Διεύθυνση PCA9536, 0x41 (65)

# Επιλογή καταχωρητή διαμόρφωσης, 0x03 (03)

# 0xFF (255) Όλες οι καρφίτσες έχουν διαμορφωθεί ως είσοδοι

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

# Έξοδος στην οθόνη

εκτύπωση "Όλα τα Pins State είναι HIGH"

ώρα. ύπνος (0,5)

# Διεύθυνση PCA9536, 0x41 (65)

# Ανάγνωση δεδομένων από 0x00 (00), 1 byte

δεδομένα = bus.read_byte_data (0x41, 0x00)

# Μετατρέψτε τα δεδομένα σε 4-bit

δεδομένα = (δεδομένα & 0x0F)

για i στο εύρος (0, 4):

εάν (δεδομένα & (2 ** i)) == 0:

εκτύπωση "I/O Pin %d State is LOW" %i

αλλιως:

εκτύπωση "I/O Pin %d State is HIGH" %i

ώρα. ύπνος (0,5)

Βήμα 4: Εφαρμογές:

Το PCA9536 μπορεί να χρησιμοποιηθεί ως διαστολέας εισόδου/εξόδου. Παρέχει μια απλή λύση όταν απαιτείται πρόσθετη είσοδος/έξοδος. Συνήθως χρησιμοποιείται σε συστήματα που απαιτούν επέκταση για διακόπτες ισχύος ACPI, αισθητήρες, κουμπιά, LED, ανεμιστήρες κ.λπ.

Συνιστάται: