כיצד להשתמש ב- PCF8575 I/O מרחיב עם Arduino

How to Use the PCF8575 I/O Expander with Arduino

ה- PCF8575 הוא מרחיב קלט/פלט של 16 סיביות המתקשר עם מיקרו-בקר דרך ממשק I2C. זה מאפשר לך להרחיב את מספר סיכות הקלט/פלט בארדואינו שלך, מה שהופך אותו למושלם לפרויקטים הדורשים חיישנים, כפתורים או נוריות LED רבות. מדריך זה ינחה אתכם באמצעות חיבור ושימוש ב- PCF8575 עם Arduino.


מה תצטרך

  1. מודול Expander I/O של PCF8575
  2. לוח ארדואינו (למשל, אונו, מגה, ננו)
  3. חיישנים, כפתורים או נוריות LED לבדיקה
  4. חוטי לחם וגשר
  5. מחשב עם Arduino IDE המותקן

שלב 1: הבנת המודול PCF8575

ה- PCF8575 מספק 16 סיכות GPIO נוספות שניתן להגדיר ככניסות או תפוקות. זה מתקשר דרך פרוטוקול I2C ויש לו כתובת I2C מתכווננת לחיבור מספר מודולים לאותו אוטובוס.

Pinout

פִּין פוּנקצִיָה
VCC ספק כוח (3.3V/5V)
GND טָחוּן
SDA קו נתונים I2C
SCL קו שעון I2C
P0-P15 סיכות קלט/פלט למטרה כללית

תצורת כתובת I2C

  • כתובת I2C נקבעת על ידי סיכות A0, A1 ו- A2:
    • כל הסיכות ל- GND: 0x20 (כתובת ברירת מחדל)
    • כל הסיכות ל- VCC: 0x27

שלב 2: חיווט ה- PCF8575 ל- Arduino

כך תוכלו לחבר את PCF8575 לארדואינו:

PCF8575 PIN סיכת ארדואינו
VCC 5V
GND GND
SDA A4 (SDA)
SCL A5 (SCL)

חבר את ציוד היקפי שלך (למשל, נוריות LED או כפתורים) לסיכות P0-P15.

פֶּתֶק: עבור לוחות ארדואינו אחרים, וודא שאתה משתמש בסיכות I2C הנכונות.


שלב 3: התקן את הספרייה הנדרשת

כדי לפשט את העבודה עם PCF8575, התקן את הספרייה "PCF8575".

שלבים להתקנה:

  1. פתח את IDE Arduino.
  2. לך אל סְקִיצָה > כלול ספרייה > לנהל ספריות.
  3. חפש "PCF8575" ולחץ לְהַתְקִין.

שלב 4: העלה את הקוד

דוגמה: שליטה על נוריות LED

קוד זה מדגים כיצד להפעיל ולכבות נוריות LED באמצעות PCF8575:

#include <Wire.h>
#include <PCF8575.h>

PCF8575 pcf8575(0x20); // Initialize with the default I2C address

void setup() {
  Serial.begin(9600);

  // Set all pins as outputs
  for (int i = 0; i < 16; i++) {
    pcf8575.pinMode(i, OUTPUT);
  }

  Serial.println("PCF8575 initialized.");
}

void loop() {
  // Turn all LEDs on
  for (int i = 0; i < 16; i++) {
    pcf8575.digitalWrite(i, HIGH);
  }
  delay(1000);

  // Turn all LEDs off
  for (int i = 0; i < 16; i++) {
    pcf8575.digitalWrite(i, LOW);
  }
  delay(1000);
}

דוגמה: כפתורי קריאה

קוד זה מדגים כיצד לקרוא קלט מכפתורים המחוברים ל- PCF8575:

#include <Wire.h>
#include <PCF8575.h>

PCF8575 pcf8575(0x20); // Initialize with the default I2C address

void setup() {
  Serial.begin(9600);

  // Set all pins as inputs
  for (int i = 0; i < 16; i++) {
    pcf8575.pinMode(i, INPUT);
  }

  Serial.println("PCF8575 initialized.");
}

void loop() {
  for (int i = 0; i < 16; i++) {
    int state = pcf8575.digitalRead(i);
    Serial.print("Pin ");
    Serial.print(i);
    Serial.print(": ");
    Serial.println(state);
  }
  delay(500);
}

שלב 5: בדוק את ההתקנה

  1. חבר את Arduino למחשב שלך באמצעות USB.
  2. פתח את ה- Arduino IDE ובחר את הנכון לוּחַ וכן נָמָל מתחת ל כְּלֵי עֲבוֹדָה תַפרִיט.
  3. העלה את הקוד לארדואינו על ידי לחיצה העלה.
  4. לדוגמא ה- LED, שימו לב נוריות LED המופלאות ומכבות. לדוגמת הכפתור, מצבי עקב על צג בצג הסידורי.

יישומים של PCF8575

  1. הרחבת סיכות GPIO לפרויקטים של ארדואינו
  2. בניית מטריצות LED מורכבות
  3. קריאת מספר חיישנים או מערכי כפתורים
  4. שליטה על ממסרים ומפעילים

פתרון בעיות

  • אין תגובה מהמודול: אמת את חיבורי I2C ותצורת הכתובת.
  • קריאות לא עקביות: יש לוודא אספקת חשמל יציבה ונגדי משיכה נאותים לקווי I2C.
  • התנהגות סיכה שגויה: בדוק כפול מצבי סיכה (קלט/פלט) בקוד.

מַסְקָנָה

התממשק בהצלחה את מרחיבת ה- I/O של ה- I/O של PCF8575 עם Arduino, ומאפשר לך לשלוט או לקרוא מ -16 סיכות נוספות של GPIO. התנסו עם ציוד היקפי שונה והרחבו את הפרויקטים שלכם באמצעות מודול רב -תכליתי זה!

השאירו תגובה

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.