KY-004 Module bouton-poussoir
Lorsque le bouton est enfoncé, deux sorties de signal sont court-circuitées l'une avec l'autre.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
Lorsque le bouton est enfoncé, deux sorties de signal sont court-circuitées l'une avec l'autre.
Données techniques
Exemple de code Arduino
Affectation des broches Arduino :
Arduino | Capteur |
---|---|
Pin 10 | Signal |
5V | +V |
GND | GND |
Arduino | Capteur |
---|---|
Pin 13 | LED+ |
GND | LED- |
Il s'agit d'un exemple de programme qui allume une LED lorsqu'un signal est détecté au niveau du capteur. Les modules KY-011, KY-016 ou KY-029 peuvent également être utilisés comme DEL.
int Led = 13 ;// Déclaration de la broche de sortie LED
int Sensor = 10; // Déclaration de la broche d'entrée du capteur
int val; // Variable temporaire
void setup ()
{
pinMode (Led, OUTPUT) ; // Initialisation de la broche de sortie
pinMode (Sensor, INPUT) ; // Initialisation de la broche du capteur
digitalWrite(Sensor, HIGH); // Activation de la résistance de Pull-up interne
}
void loop ()
{
val = digitalRead (Sensor) ; // Lecture de la valeur du signal
if (val == HIGH) // Si un signal est détecté, la diode s'allume
{
digitalWrite (Led, LOW);
}
else
{
digitalWrite (Led, HIGH);
}
}
Téléchargement d'un exemple de prog
Lorsque le bouton est enfoncé, deux sorties de signal sont court-circuitées l'une avec l'autre.
Données techniques
Exemple de code Raspberry Pi
Affectation des broches du Raspberry Pi
Raspberry Pi | Capteur |
---|---|
GPIO 24 [Pin 18] | Signal |
3,3V [Pin 1] | +V |
GND [Pin 6] | GND |
Il s'agit d'un programme d'exemple similaire, à la différence qu'ici aucune LED n'est allumée mais que quelque chose est émis dans la console lorsqu'un signal est détecté.
from gpiozero import Button
import time
# Le capteur est initialisé en tant qu'objet bouton avec une résistance pull-up interne activée.
sensor = Button(24, pull_up=True)
print("Test des capteurs [Appuyez sur CTRL+C pour arrêter le test].")
# Cette fonction est exécutée lorsqu'un signal est détecté (front descendant).
def ausgabeFunktion():
print("Signal reconnu")
# La fonction 'outputFunction' est liée à l'événement 'when_pressed' du capteur.
sensor.when_pressed = ausgabeFunktion
# Main program loop
try:
while True:
time.sleep(1)
# Le travail de nettoyage après l'achèvement du programme
except KeyboardInterrupt:
print("Programme terminé")
Téléchargement d'un exemple de programme
Pour commencer avec la commande :
sudo python3 KY004-RPi.py
Lorsque le bouton est enfoncé, deux sorties de signal sont court-circuitées l'une avec l'autre.
Données techniques
Exemple de code Micro:Bit
Affectation des broches Micro:Bit :
Micro:Bit | Capteur |
---|---|
Pin 1 | Signal |
3V | +V |
GND | GND |
Ceci est un exemple MakeCode pour Micro:Bit qui fait essentiellement la même chose que les exemples des deux autres variantes. Cependant, cet exemple est plus proche de celui du Raspberry Pi que de celui de l'Arduino.
Téléchargement d'un exemple de programme
Lorsque le bouton est enfoncé, deux sorties de signal sont court-circuitées l'une avec l'autre.
Données techniques
Exemple de code Raspberry Pi Pico
Affectation des broches Raspberry Pi Pico
Raspberry Pi Pico | Capteur |
---|---|
GPIO26 | Signal |
3.3V | +V |
GND | GND |
Il s'agit d'un exemple de programme qui compte et sort du texte en série lorsqu'un signal est détecté par le capteur.
# Charger les bibliothèques
from machine import Pin, Timer
# Initialisation de GPIO26 comme entrée
sensor = Pin(26, Pin.IN, Pin.PULL_DOWN)
# Créer un timer
timer = Timer()
# Initialisation des variables
counter = 0
# Fonction : Compter les étapes
def up(timer):
global counter
counter = counter + 1
print(counter)
# Fonction de débordement : Définir la temporisation
def btn(pin):
timer.init(mode=Timer.ONE_SHOT, period=100, callback=up)
# Initialisation de l'interruption
sensor.irq(trigger=Pin.IRQ_FALLING, handler=btn)