Allumage Led - Pression bouton

Bonjour à tous,

J’essaye d’allumer une série de LED grâce à un bouton poussoir.
J’ai déjà réussi à réaliser un programme qui allume les leds quand j’appuie sur le bouton et que je reste appuyé.
Aujourd’hui j’aimerai que mon programme détecte une impulsion sur mon bouton et qu’il allume les leds, même si je relâche le bouton jusqu’à la fin de la boucle.
Mais la ça ne fonctionne pas!

Ci-dessous mon programme.

Merci d’avance pour votre aide.

import RPi.GPIO as GPIO
import time
Bouton_IN = 11
Memo_bouton = False

GPIO.setmode(GPIO.BOARD)
GPIO.setup(Bouton_IN, GPIO.IN, pull_up_down=GPIO.PUD_UP)

GPIO.setup(3, GPIO.OUT)
GPIO.setup(5, GPIO.OUT)
GPIO.setup(7, GPIO.OUT)
GPIO.output(3, False)
GPIO.output(5, False)
GPIO.output(7, False)
bouton = GPIO.input (Bouton_IN)

if bouton == 0:
Memo_bouton == True
if Memo_bouton == True:
while True:
GPIO.output(3, True)
time.sleep(0.05)
GPIO.output(5, False)
time.sleep(0.04)
GPIO.output(7, False)
time.sleep(0.09)
GPIO.output(5, True)
time.sleep(0.06)
GPIO.output(3, False)
time.sleep(0.010)
GPIO.output(7, True)
time.sleep(0.05)
GPIO.output(5, False)
time.sleep(0.04)
Memo_bouton == False

salut @dem86

Je n’ai pas analysé ton code ni comment il faudrait coder ce que tu cherches à faire.
En tout cas, le code après « if Memo_bouton == True: » ne sera jamais exécuté.
Je te propose de deviner ce que va afficher le bout de code suivant, et de l’exécuter sur ta machine:

bouton=False
bouton == False
if bouton==True: print(‹ anaconda ›)
else: print(‹ serpent a plume ›)

Pour mon info, quelle version de python tourne sur ta machine?
dans un terminal, entrer la commande:
python --version

Salut pour cela tu dois regarder comment lire une donner INPUT via python dans une boucle.

Fait ce code simple dans un autre fichier et exécute le :

#!/usr/bin/python
import RPi.GPIO as GPIO
import time
bouton = GPIO.input(11)

GPIO.setmode(GPIO.BOARD)
GPIO.setup(Bouton_IN, GPIO.IN, pull_up_down=GPIO.PUD_UP)
 
while True:
    if (bouton):
     print("Button Pressed")

Si besoin d’explication no soucis. Mais si tu met ce code à part tu comprendras :slight_smile: