Note
Bonjour et bienvenue dans la Communauté Facebook des passionnés de Raspberry Pi, Arduino et ESP32 de SunFounder ! Plongez plus profondément dans l’univers des Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.
Pourquoi rejoindre ?
Support d’experts : Résolvez les problèmes après-vente et les défis techniques avec l’aide de notre communauté et de notre équipe.
Apprendre et partager : Échangez des astuces et des tutoriels pour améliorer vos compétences.
Aperçus exclusifs : Accédez en avant-première aux annonces de nouveaux produits et aux aperçus.
Réductions spéciales : Profitez de réductions exclusives sur nos produits les plus récents.
Promotions festives et cadeaux : Participez à des cadeaux et des promotions de vacances.
👉 Prêt à explorer et à créer avec nous ? Cliquez [Ici] et rejoignez-nous aujourd’hui !
2.1.3 Module Interrupteur Tactile
Introduction
Dans ce projet, vous allez découvrir le module interrupteur tactile. Il peut remplacer les types d’interrupteurs traditionnels avec ces avantages : utilisation pratique, sensation tactile agréable, contrôle précis et usure mécanique minimale.
Composants Nécessaires
Dans ce projet, nous avons besoin des composants suivants.
Il est définitivement pratique d’acheter un kit complet, voici le lien :
Name |
ITEMS IN THIS KIT |
LINK |
|---|---|---|
Raphael Kit |
337 |
Vous pouvez également les acheter séparément aux liens ci-dessous.
INTRODUCTION DES COMPOSANTS |
LIEN D’ACHAT |
|---|---|
Schéma de Câblage
Procédures Expérimentales
Étape 1 : Construisez le circuit.
Étape 2 : Changez de répertoire.
cd ~/raphael-kit/c/2.1.3/
Étape 3 : Compilez.
gcc 2.1.3_TouchSwitch.c -lwiringPi
Étape 4 : Exécutez.
sudo ./a.out
Pendant l’exécution du code, la LED rouge s’allume ; lorsque vous appuyez sur le module interrupteur tactile, la LED jaune s’allume.
Note
Si cela ne fonctionne pas après exécution, ou s’il y a un message d’erreur : "wiringPi.h: No such file or directory », veuillez consulter Installer et vérifier 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;
}
Explication du Code
#define touchPin 0
#define led1 3
#define led2 2
Les broches GPIO17, GPIO22 et GPIO27 de la carte T_Extension correspondent aux GPIO0, GPIO3 et GPIO2 dans wiringPi. Assignez GPIO0, GPIO3 et GPIO2 à touchPin, led1 et led2.
pinMode(touchPin, INPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
Définissez led1 et led2 comme sorties pour leur attribuer une valeur et définissez touchPin comme entrée pour lire sa valeur.
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);
}
}
Créez une boucle infinie : lorsque vous appuyez sur le module interrupteur tactile, touchPin passe à l’état haut, led1 s’allume et affiche « You touch it! ». Lorsque touchPin est à l’état bas, led2 s’allume.