Az MPR121 egy kapacitív érintőérzékelő-vezérlő, amely akár 12 érintőképes elektródot is képes felismerni. Általában érintő érzékeny interfészekben, hangszerekben és más interaktív projektekben használják. Ebben az oktatóanyagban megmutatjuk, hogyan lehet csatlakoztatni és használni az MPR121-et az Arduino-val érintőalapú alkalmazások létrehozásához.
Mire lesz szüksége
- MPR121 érintőérzékelő modul
- Arduino Board (például Uno, Mega, Nano)
- Kenyérlemez és jumper vezetékek
- Egy számítógép, amelyen az Arduino IDE telepített
1. lépés: Az MPR121 modul megértése
Az MPR121 az I2C kommunikációt használja a mikrovezérlővel való interfészhez. 12 érintőérzékeny bemenete van, amelyek képesek kimutatni a kapacitív változásokat, ha egy vezetőképes objektum (például ujj) az elektródok közelében van.
MPR121 Pinout
Csap | Funkció |
---|---|
VCC | Tápegység (3,3 V/5 V) |
GND | Föld |
SDA | I2C adatsor |
SCL | I2C óravonal |
IRQ | Megszakítja a kimenetet (opcionális) |
2. lépés: Az MPR121 vezetékesítése Arduino -ra
Így lehet csatlakoztatni az MPR121 -et egy Arduino UNO -hoz:
MPR121 PIN | Arduino Pin |
---|---|
VCC | 5 V -os |
GND | GND |
SDA | A4 (SDA) |
SCL | A5 (SCL) |
IRQ (opcionális) | Nem kapcsolódva |
Jegyzet: Más Arduino táblák esetén ellenőrizze az I2C csapjait a testület dokumentációjában.
3. lépés: Telepítse a szükséges könyvtárat
Az AdaFruit MPR121 könyvtár egyszerűsíti az érzékelővel való együttműködést.
A telepítéshez szükséges lépések:
- Nyissa meg az Arduino IDE -t.
- Elindul Vázlat > Tartalmazza a könyvtárat > Könyvtárak kezelése.
- Keresse meg az "AdaFruit MPR121" -et, és kattintson Beilleszt.
4. lépés: Töltse fel a kódot
Íme egy példa vázlat az érintési bemenetek észlelésére az MPR121 -ből:
#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. lépés: Tesztelje a beállítást
- Csatlakoztassa az Arduino -t a számítógépéhez USB -n keresztül.
- Nyissa meg az Arduino IDE -t, és válassza ki a megfelelőt Bizottság és Kikötő a Szerszámok menü.
- Töltse fel a kódot az Arduino -ba kattintással Feltöltés.
- Nyissa meg a soros monitort (Szerszámok > Soros monitor) és állítsa be az adatátviteli sebességet
9600
. - Érintse meg az MPR121 modul elektródjait, és figyelje meg az észlelt érintőképernyők soros monitorját.
Opcionális: Az IRQ PIN használata megszakításokhoz
Az IRQ PIN felhasználható egy megszakítás kiváltására, ha érintést észlelnek, csökkentve az érzékelő folyamatosan szavazásának szükségességét.
- Csatlakoztassa a
IRQ
Az MPR121 csapja az Arduino digitális csapjához (például 2. érintkező). - Módosítsa a kódot a megszakítás és az érintés észlelésének csatlakoztatásához a megszakítás szolgáltatási rutinban (ISR).
Az MPR121 alkalmazásai
- Kapacitív érintőképernyők
- Hangszerek
- Interaktív művészeti installációk
- Gesztus alapú vezérlők
Hibaelhárítás
- Nincs válasz az érzékelőtől: Ellenőrizze az I2C kapcsolatokat és a címet.
- Következetlen érintés -észlelés: Győződjön meg arról, hogy az elektródák tiszta és megfelelően csatlakoztatva vannak.
- Könyvtári hibák: Ellenőrizze, hogy az AdaFruit MPR121 könyvtár telepítve van -e.
Következtetés
Sikeresen összekapcsolja az MPR121 kapacitív érintőképesség -érzékelőt az Arduino -val. Ez a sokoldalú érzékelő lehetőségeket nyit meg az interaktív és érintőképes projektek létrehozására. Kísérletezzen különböző elektróda -tervekkel és konfigurációkkal, hogy kibővítse funkcionalitását!