Arduino – Capacitive Touch Sensor module (TTP223B)
Hardware
Pinout
Module pin: | Function: |
---|---|
01 | VCC +2.5-5v |
02 | GND |
03 | HIGH/LOW |
Informatie?
Het uitlezen van de Capacitive Touch Sensor module (TTP223B) is vrij eenvoudig, deze geeft een high/low op de uitgang van de module, deze is uit te lezen via een arduino pin.
Voorbeeld toepassingen (let opL je kan het gedrag van de module bepalen d.m.v. doorverbindingen te solderen op de achterkant)
Aansluiten op de Arduino
Sluit de module aan volgens onderstaand overzicht:
Arduino pin: | Module pin: |
---|---|
+5v | Pin 01 (VCC +2.5-5v) |
GND | Pin 02 (GND) |
2 | Pin 03 (HIGH/LOW) |
Script
Dit script laat LED 13 branden, drukken = aan, daarna drukken = uit, etc.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
int TouchSensor = 2; // Pin for capactitive touch sensor int led = 13; boolean currentState = LOW; boolean lastState = LOW; boolean LedState = LOW; void setup() { pinMode(led, OUTPUT); pinMode(TouchSensor, INPUT); } void loop() { currentState = digitalRead(TouchSensor); if (currentState == HIGH && lastState == LOW){ delay(5); if (LedState == HIGH){ digitalWrite(led, LOW); LedState = LOW; } else { digitalWrite(led, HIGH); LedState = HIGH; } } lastState = currentState; } |
Een ander voorbeeld:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
// When Sig Output is high, touch sensor is being pressed #define ctsPin 2 // Pin for capactitive touch sensor int ledPin = 13; // pin for the LED void setup() { Serial.begin(9600); pinMode(ledPin, OUTPUT); pinMode(ctsPin, INPUT); } void loop() { int ctsValue = digitalRead(ctsPin); if (ctsValue == HIGH){ digitalWrite(ledPin, HIGH); Serial.println("TOUCHED"); } else{ digitalWrite(ledPin,LOW); Serial.println("not touched"); } delay(100); } |
Bronnen:
henrysbench.capnfatz.com