Bemerkung

Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.

Warum beitreten?

  • Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.

  • Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.

  • Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.

  • Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.

  • Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.

👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [hier] und treten Sie heute bei!

2.1.3 Berührungsschalter-Modul

Einführung

In diesem Projekt werden Sie das Berührungsschalter-Modul kennenlernen. Es kann herkömmliche Schaltertypen ersetzen und bietet dabei folgende Vorteile: bequeme Bedienung, feines Berührungsgefühl, präzise Steuerung und minimaler mechanischer Verschleiß.

Benötigte Komponenten

Für dieses Projekt benötigen wir die folgenden Komponenten.

../_images/2.1.3component.png

Es ist definitiv praktisch, ein ganzes Set zu kaufen, hier ist der Link:

Name

ARTIKEL IN DIESEM KIT

LINK

Raphael Kit

337

Raphael Kit

Sie können sie auch separat über die untenstehenden Links kaufen.

KOMPONENTENBESCHREIBUNG

KAUF-LINK

GPIO Extension Board

KAUFEN

Steckbrett

KAUFEN

Jumper-Kabel

KAUFEN

Widerstand

KAUFEN

LED

KAUFEN

Berührungsschalter Modul

KAUFEN

Schaltplan

../_images/2.1.3circuit.png

Experimentelle Verfahren

Schritt 1: Bauen Sie den Schaltkreis.

../_images/2.1.3fritzing.png

Schritt 2: Verzeichnis wechseln.

cd ~/raphael-kit/c/2.1.3/

Schritt 3: Kompilieren.

gcc 2.1.3_TouchSwitch.c -lwiringPi

Schritt 4: Ausführen.

sudo ./a.out

Während der Code ausgeführt wird, leuchtet die rote LED auf; wenn Sie das Berührungsschalter-Modul antippen, schaltet sich die gelbe LED ein.

Bemerkung

Wenn es nach dem Ausführen nicht funktioniert oder eine Fehlermeldung angezeigt wird: "wiringPi.h: Datei oder Verzeichnis nicht gefunden", beziehen Sie sich bitte auf Installieren und Überprüfen von WiringPi.

Code

#include <wiringPi.h>
#include <stdio.h>

#define touchPin               0
#define led1                   3
#define led2                   2

int main(void)
{
    // When initialize wiring failed, print message to screen
    if(wiringPiSetup() == -1){
        printf(etup w"siringPi failed !");
        return 1;
    }

    pinMode(touchPin, INPUT);
    pinMode(led1, OUTPUT);
    pinMode(led2, OUTPUT);

    while(1){
        // touch switch high, led1 on
        if(digitalRead(touchPin) == 1){
            digitalWrite(led1, LOW);
            digitalWrite(led2, HIGH);
            printf("You touch it! \r\n");
        }
        // touch switch low, led2 on
        if(digitalRead(touchPin) == 0){
            digitalWrite(led2, LOW);
            digitalWrite(led1, HIGH);
        }
    }

    return 0;
}

Code-Erklärung

#define touchPin               0
#define led1                   3
#define led2                   2

Die Pins GPIO17, GPIO22 und GPIO27 des T_Extension Boards entsprechen den Pins GPIO0, GPIO3 und GPIO2 in wiringPi. Weisen Sie GPIO0, GPIO3 und GPIO2 den Variablen touchPin, led1 und led2 zu.

pinMode(touchPin, INPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);

Legen Sie led1 und led2 als Ausgänge fest, um Werte an sie zu senden, und setzen Sie touchPin als Eingang, um Werte von ihm zu lesen.

while(1){
    // touch switch high, led1 on
        if(digitalRead(touchPin) == 1){
        digitalWrite(led1, LOW);
        digitalWrite(led2, HIGH);
        printf("You touch it! \r\n");
    }
    // touch switch low, led2 on
    if(digitalRead(touchPin) == 0){
        digitalWrite(led2, LOW);
        digitalWrite(led1, HIGH);
    }
}

Setzen Sie eine unendliche Schleife. Wenn Sie das Berührungsschalter-Modul antippen, ist touchPin hoch, und led1 wird leuchten und „Sie haben es berührt!“ ausgeben. Wenn touchPin niedrig ist, wird led2 leuchten.

Phänomen-Bild

../_images/2.1.3touch_switch_module.JPG