Nr. 40 – CAP1188 Kapazitiver Berührungssensor

ACHTUNG – Noch in Bearbeitung

Hier entsteht gerade eine Anleitung zum 8-Fach Berührungssensor von Adafruit.

Bezeichnung: CAP1188 – 8-Key Capacitive Touch Sensor Breakout – I2C or SPI Adafruit 1602

 

Aufgabe : Eine LED soll aufleuchten, wenn eine Leitung des CAP1188 berührt wird

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

Material : Mikrocontroller / Breadboardkabel / Breadboard / CAP1188 (www.funduinoshop.com)

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

Weitere Verkabelung folgt

 

Sketch zum Abspielen einer Melodie

#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 detaillierte und umfangreichere Anleitung in englischer Sprache gibt es hier:

https://learn.adafruit.com/adafruit-cap1188-breakout/overview