כיצד להשתמש בחיישן המגע הקיבולי MPR121 עם Arduino

How to Use the MPR121 Capacitive Touch Sensor with Arduino

ה- MPR121 הוא בקר חיישן מגע קיבולי שיכול לאתר עד 12 אלקטרודות רגישות למגע. הוא משמש בדרך כלל בממשקים רגישים למגע, כלי נגינה ופרויקטים אינטראקטיביים אחרים. במדריך זה נראה לך כיצד להתחבר ולהשתמש ב- MPR121 עם Arduino כדי ליצור יישומים מבוססי מגע.


מה תצטרך

  1. MPR121 מודול חיישן מגע
  2. לוח ארדואינו (למשל, אונו, מגה, ננו)
  3. חוטי לחם וגשר
  4. מחשב עם Arduino IDE המותקן

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

ה- MPR121 משתמש בתקשורת I2C כדי לממשק למיקרו -בקר. יש לו 12 כניסות רגישות למגע שיכולות לאתר שינויים קיבוליים כאשר אובייקט מוליך (למשל, אצבע) נמצא בסמוך לאלקטרודות.

MPR121 PINOUT

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

שלב 2: חיווט ה- MPR121 לארדואינו

כך תוכלו לחבר את ה- MPR121 ל- Arduino Uno:

סיכה MPR121 סיכת ארדואינו
VCC 5V
GND GND
SDA A4 (SDA)
SCL A5 (SCL)
IRQ (אופציונלי) לא מחובר

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


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

ספריית Adafruit MPR121 מפשטת את העבודה עם החיישן.

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

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

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

להלן סקיצה דוגמה לאיתור כניסות מגע מ- MPR121:

#include <Wire.h>
#include "Adafruit_MPR121.h"

Adafruit_MPR121 mpr121 = Adafruit_MPR121();

void setup() {
  Serial.begin(9600);
  Serial.println("Initializing MPR121...");

  if (!mpr121.begin(0x5A)) { // Default I2C address is 0x5A
    Serial.println("MPR121 not found. Check connections.");
    while (1);
  }

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

void loop() {
  // Read touch status
  uint16_t touchStatus = mpr121.touched();

  for (uint8_t i = 0; i < 12; i++) {
    if (touchStatus & (1 << i)) {
      Serial.print("Electrode ");
      Serial.print(i);
      Serial.println(" touched.");
    }
  }

  delay(100); // Update every 100ms
}

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

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

אופציונלי: שימוש ב- IRQ PIN להפסקות

ניתן להשתמש בסיכת ה- IRQ כדי להפעיל הפרעה כאשר מתגלה נגיעה, מה שמפחית את הצורך לסקר כל הזמן את החיישן.

  1. חבר את IRQ סיכה של ה- MPR121 לסיכה דיגיטלית על הארדואינו (למשל, סיכה 2).
  2. שנה את הקוד כדי לצרף הפרעה וטיפול בזיהוי מגע בשגרת שירות ההפרעה (ISR).

יישומים של ה- MPR121

  1. ממשקי מגע קיבוליים
  2. כְּלֵי נְגִינָה
  3. מתקני אמנות אינטראקטיביים
  4. בקרות מבוססות מחווה

פתרון בעיות

  • אין תגובה מהחיישן: אמת את חיבורי ה- i2c וכתובת.
  • איתור מגע לא עקבי: ודא שהאלקטרודות נקיות ומחוברות כראוי.
  • שגיאות בספריה: אשר כי ספריית Adafruit MPR121 מותקנת.

מַסְקָנָה

התממשק בהצלחה את חיישן המגע הקיבולי MPR121 עם Arduino. חיישן רב-תכליתי זה פותח אפשרויות ליצירת פרויקטים אינטראקטיביים ורגישים למגע. התנסו בעיצובים ותצורות אלקטרודות שונות כדי להרחיב את הפונקציונליות שלה!

השאירו תגובה

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.