Modifications

Sauter à la navigation Sauter à la recherche
1 192 octets ajoutés ,  28 décembre 2015 à 19:04
Ligne 220 : Ligne 220 :  
Comme vous pouvez le constater sur le montage ci-dessus, le bouton ramène la broche X5 à la masse lorsque celui-ci est pressé.
 
Comme vous pouvez le constater sur le montage ci-dessus, le bouton ramène la broche X5 à la masse lorsque celui-ci est pressé.
   −
  <nowiki># Controle d'un relais branché sur X8 à l'aide du bouton branché sur X5</nowiki>
+
  <nowiki># Controle d'un relais branché sur X8 à l'aide du bouton branché sur X5
 +
# Contrôle d'un relais branché sur le X8
 +
from pyb import delay
 +
 
 +
# Relais
 +
RELAY_PIN = pyb.Pin.board.X8
 +
relais = pyb.Pin( RELAY_PIN, pyb.Pin.OUT_PP )
 +
relais.low()
 +
 
 +
""" Classe pour gérer un bouton pull-up sur une broche X.
 +
    Détecte lorsque la broche passe à 0 """
 +
class PullUpButton:
 +
    p = None # Pin object
 +
    state = None # Last known state
 +
 
 +
    def __init__( self, button_pin ):
 +
        self.p = pyb.Pin( button_pin, pyb.Pin.IN, pull=pyb.Pin.PULL_UP )
 +
        self.state = self.p.value()
 +
   
 +
    def is_pressed(self):
 +
        """ vérifie si le bouton est pressé / détecte le changement
 +
    d'état. Ne sera signalé qu'une seule fois! """
 +
        val = self.p.value()
 +
        result = False
 +
        if val != self.state:
 +
            # relecture dans 10 ms (deboucing)
 +
            pyb.delay( 10 )
 +
            val2 = self.p.value()
 +
            if val == val2: # valeur stable :)
 +
                self.state = val
 +
                result = (val == 0) # Is pressed
 +
        return result
 +
 
 +
# Bouton
 +
BTN_PIN = pyb.Pin.board.X5
 +
b = PullUpButton( BTN_PIN )
 +
 
 +
# Corps du programme
 +
while True:
 +
    if b.is_pressed():
 +
if relais.value() == 1:
 +
relais.low()
 +
else:
 +
    relais.high()</nowiki>
 +
 
 
=== Réaliser un temporisateur ===
 
=== Réaliser un temporisateur ===
 
Toujours avec le bouton poussoir banché sur la broche X5, nous allons aussi avoir l'opportunité de réaliser un temporisateur.  
 
Toujours avec le bouton poussoir banché sur la broche X5, nous allons aussi avoir l'opportunité de réaliser un temporisateur.  
29 836

modifications

Menu de navigation