Hallo zusammen,
gestern haben wir kurz gezeigt wie man die nativen Touch-Pins am ESP32 nutzt. Für eine Benutzung am Mikrocontroller, kompatibel mit Arduino UNO R3 brauchen wir etwas Hardware und eine Libary. Das Funktionsprinzip ist jedoch gleich. Wir benutzen in unserem Beispiel so wenig Hardware wie möglich und beschränken uns auf einen Widerstand. Leider kann die Funktion nicht ganz so komfortabel aufgerufen werden wie am ESP32 mit ArduinoIDE.
Die nötige Hardware:
- Mikrokontroller, kompatibel mit Uno R3
- Widerstand mind. 1MΩ
- Krokodilklemme (optional)
Der Zusammenbau, Schaltung kann man es kaum nennen, ist recht einfach:
Stecken Sie den Widerstand zwischen D2 und D8 in den Uno und befestigen Sie anschließend die Krokodilklemme an der D8-Seite des Widerstands.
Da wir bei diesem Beispiel möglichst wenige Komponenten verwenden wollen benutzen wir die im UNO integrierte LED.
Die notwendige Libary gibt es hier.
Hier der Beispielcode:
#include <CapacitiveSensor.h>
CapacitiveSensor cs_2_8 = CapacitiveSensor(2,8); // 1M resistor between pins 4 & 8, pin 8 is sensor pin, add a wire and or foil void setup() { cs_2_8.set_CS_AutocaL_Millis(0xFFFFFFFF);// turn off autocalibrate on channel 1 - just as an example Serial.begin(9600); pinMode(13,OUTPUT); } void loop() { long touch = cs_2_8.capacitiveSensor(100); Serial.println(touch); // print sensor output if(touch >= 1000) { digitalWrite(13,HIGH); } else{ digitalWrite(13,LOW); } }
Bis zum nächsten Beitrag :)