תוכן עניינים:

Raspberry Pi - PCA9536 הרחבת קלט/פלט פייתון הדרכה: 4 שלבים
Raspberry Pi - PCA9536 הרחבת קלט/פלט פייתון הדרכה: 4 שלבים

וִידֵאוֹ: Raspberry Pi - PCA9536 הרחבת קלט/פלט פייתון הדרכה: 4 שלבים

וִידֵאוֹ: Raspberry Pi - PCA9536 הרחבת קלט/פלט פייתון הדרכה: 4 שלבים
וִידֵאוֹ: ESP32 Tutorial 3 - Resistor, LED, Bredboard and First Project: Hello LED -ESP32 IoT Learnig kit 2024, נוֹבֶמבֶּר
Anonim
Image
Image

ה- PCA9536 הוא מכשיר CMOS בעל 8 פינים המספק 4 סיביות הרחבה של כניסת/פלט מקבילה למטרות כלליות ליישומי I2C-bus/SMBus. הוא מורכב מרשם תצורה של 4 סיביות לשרת את מטרת הבחירה של קלט או פלט, רגיסט יציאת קלט של 4 סיביות, מאגר יציאות פלט של 4 סיביות ומאגר היפוך קוטביות של 4 סיביות פעיל HIGH או פעיל LOW פעיל. להלן ההדגמה שלה עם פי הפטל באמצעות קוד פייתון.

שלב 1: מה שאתה צריך..

מה אתה צריך..!!
מה אתה צריך..!!

1. פטל פטל

2. PCA9536

3. כבל I²C

4. מגן I²C עבור פטל פטל

5. כבל אתרנט

שלב 2: חיבורים:

חיבורים
חיבורים
חיבורים
חיבורים
חיבורים
חיבורים
חיבורים
חיבורים

קח מגן I2C לפאי פטל ודחוף אותו בעדינות מעל סיכות ה- gpio של פטל פאי.

לאחר מכן חבר את הקצה האחד של כבל I2C לחיישן PCA9536 והקצה השני למגן I2C.

חבר גם את כבל ה- Ethernet ל- pi או שאתה יכול להשתמש במודול WiFi.

חיבורים מוצגים בתמונה למעלה.

שלב 3: קוד:

קוד
קוד

ניתן להוריד את קוד הפיתון ל- PCA9536 ממאגר github שלנו- חנות DCUBE.

הנה הקישור

השתמשנו בספריית SMBus לקוד פייתון, השלבים להתקנת SMBus על פטל פאי מתוארים כאן:

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

אתה יכול גם להעתיק את הקוד מכאן, הוא ניתן כדלקמן:

# מופץ ברישיון רצון חופשי.

# השתמש בו בכל דרך שתרצה, ברווח או בחינם, בתנאי שהוא מתאים לרישיונות של העבודות הקשורות בו.

# PCA9536

# קוד זה נועד לעבודה עם מודול מיני PCA9536_I2CIO I2C #

יבוא smbus

זמן יבוא

# קבל אוטובוס I2C

אוטובוס = smbus. SMBus (1)

כתובת PCA9536, 0x41 (65)

# בחר רשם תצורה, 0x03 (03)

# 0xFF (255) כל הסיכות מוגדרות ככניסות

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

# פלט למסך

- "כל מצב הפינים גבוה"

time.sleep (0.5)

כתובת PCA9536, 0x41 (65)

# קרא את הנתונים בחזרה מ 0x00 (00), 1 בתים

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

# המר את הנתונים ל -4 סיביות

data = (נתונים & 0x0F)

עבור i בטווח (0, 4):

אם (נתונים & (2 ** i)) == 0:

הדפס "פין I/O %d המצב נמוך" %i

אחר:

- הדפס "I/O Pin %d מצב הוא גבוה" %i

time.sleep (0.5)

שלב 4: יישומים:

ניתן להשתמש ב- PCA9536 כמרחיב קלט/פלט. הוא מספק פתרון פשוט כאשר יש צורך בקלט/פלט נוספים. בדרך כלל הוא מועסק במערכות הדורשות הרחבה עבור מתגי מתח ACPI, חיישנים, כפתורי לחיצה, נוריות LED, מאווררים וכו '.

מוּמלָץ: