Modifications

Sauter à la navigation Sauter à la recherche
585 octets ajoutés ,  12 juillet 2016 à 11:26
Ligne 60 : Ligne 60 :  
Dans cette partie du code, nous allons scanner les GPIOS et tester les boutons pour voir si l'un d'entre-eux est pressé.  
 
Dans cette partie du code, nous allons scanner les GPIOS et tester les boutons pour voir si l'un d'entre-eux est pressé.  
   −
Nous parcourons simplement la structure {{fname|button_map}} que nous avons précédemment créée. Nous allons récupérer des paires d'information (la clé et la valeur, respectivement appelés ''Key'' et ''Value''... ou ''k'' et ''v''). Cette paire d'information correspond à la broche GPIO et la couleur... tels qu'associés dans {{fname|button_map}} .
+
Nous parcourons simplement la structure {{fname|button_map}} que nous avons précédemment créée. Nous allons récupérer des paires d'information (la clé et la valeur, respectivement appelés ''Key'' et ''Value''... ou ''k'' et ''v''). Ces paires d'information correspondent aux associations broche GPIO et couleur... tels qu'associés dans {{fname|button_map}} .
   −
ulling out the GPIO number and the RGB tuple into k and v. If the GPIO is set False then the button is down. In which case we fill the background with the color referenced by v and then draw the text of the GPIO number.
+
Si le GPIO (variable ''k'') est à {{fname|False}}, cela signifie le le bouton est enfoncé (pour la broche est ramenée au niveau bas/masse). Dans ce cas, nous remplissons le fond d'écran avec la couleur correspondante (la variable ''v'') et affichons le numéro du GPIO au centre de l'écran.
   −
Note the {{fname|sleep(0.1)}} call at the end of the loop. This simply ensures that our program is yielding and not running at 100% CPU usage.  
+
Notez l'appel à {{fname|sleep(0.1)}} qui fait une pause de 0.1 seconde en fin de boucle. Cela assure simplement que le programme cède sont temps machine au système d'exploitation pendant 0.1 seconde... ceka évite d'utiliser 100% du CPU.  
    
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
while True:
 
while True:
     # Scan the buttons
+
     # Scanner les bouton
 
     for (k,v) in button_map.items():
 
     for (k,v) in button_map.items():
 
         if GPIO.input(k) == False:
 
         if GPIO.input(k) == False:
 +
            # Remplir l'écran avec la couleur du bouton
 
             lcd.fill(v)
 
             lcd.fill(v)
 +
 +
            # Créer une "surface" contenant le rendu du texte à afficher
 +
            # Texte en blanc (white)
 
             text_surface = font_big.render('%d'%k, True, WHITE)
 
             text_surface = font_big.render('%d'%k, True, WHITE)
 +
            # Retourne une aire rectangulaire de la surface
 +
            # MAIS EN FAISANT un centrage
 
             rect = text_surface.get_rect(center=(160,120))
 
             rect = text_surface.get_rect(center=(160,120))
 +
            # Dessine/applique la surface Text_Surface sur l'écran (la surface "lcd")
 
             lcd.blit(text_surface, rect)
 
             lcd.blit(text_surface, rect)
 +
 +
            # Mise à jour de l'écran
 
             pygame.display.update()
 
             pygame.display.update()
 
     sleep(0.1)
 
     sleep(0.1)
29 918

modifications

Menu de navigation