Nr. 40 – CAP1188 Kapazitiver Berührungssensor

Den kapazitiven Berührungssensor CAP1188 an einem Arduino Mikrocontroller verwenden

Übungsaufgabe

Ein Lautsprecher soll eine Melodie spielen, die durch die Berührung der Leitungen des CAP1188 hervorgerufen wird.

Pinout

Das Modul wird wie folgt am Mikrocontroller angeschlossen: 

  • GND = anzuschließen an den GND Pin des Mikrocontrollers
  • VIN = anzuschließen an den 5V Pin des Mikrocontrollers

Beispielsketch

#include <Wire.h>
#include <SPI.h>
#include <Adafruit_CAP1188.h>
Adafruit_CAP1188 cap = Adafruit_CAP1188();

void setup() {
  Serial.begin(9600);
  Serial.println("CAP1188 Testsketch!");
  if (!cap.begin()) 
  {
    Serial.println("CAP1188 nicht gefunden");
    while (1);
  }
  Serial.println("CAP1188 found!");
}

void loop() 
{
uint8_t Signal = cap.touched();
if (Signal == 0) // Wenn kein Signal erkannt wurde...
  {
    return; // Wiederhole die Schleife.
  }
  
for (uint8_t i=0; i<8; i++) // Wenn ein Signal erkannt wurde, werden hier alle acht Kanäle ausgelesen.
 {
 if (Signal & (1 << i)) 
  {
  Serial.print("C"); Serial.print(i+1); Serial.print("\t"); //Ausgabe am Seriellen Monitor, an welchem Kanal eine Berührung detektiert wurde
  tone(7, (i+1)*100); // Tonausgabe am Lautsprecher an Pin7, mit der Tonhöhe des jeweiligen Kanals (Tonhöhe = Zahl des Kanals mal 100)
  }
 }
delay(50); // Wartezeit in der ein Ton gespielt wird.
noTone(7); // Der Ton wird abgeschaltet.
Serial.println(); //Hier wird ein Zeilenumbruch am Seriellen Monitor erzeugt.
}

Eine ausführliche Dokumentation zu diesem Modul in englischer Sprache gibt es hier.

Funduino - Dein Onlineshop für Mikroelektronik

  • Dauerhaft bis zu 10% Rabatt für Schüler, Studenten und Lehrkräfte
  • Mehr als 3.500 Artikel sofort verfügbar!
  • Über 8 Jahre Erfahrung mit Arduino, 3D-Druck und co.
SALE