Modifications

Sauter à la navigation Sauter à la recherche
560 octets ajoutés ,  5 octobre 2015 à 07:48
aucun résumé de modification
Ligne 79 : Ligne 79 :     
== Faire encore mieux ==
 
== Faire encore mieux ==
=== Animer avec une boucle FOR ===
+
=== Utiliser les boucles FOR ===
Dans cette version du programme, nous allons utiliser deux boucle for:
+
Dans cette version du programme, nous allons:
* Une boucle for pou remplacer le contenu de la boucle {{fname|while True}} pour raccourcir le programme.
+
* Nous commençons par créer une liste {{fname|names}} qui contient les noms des broches utilisées sur notre PyBoard.
 +
* Utiliser une boucle {{fname|for}} pour créer une liste {{fname|pins}} contenant des objets {{fname|Pin}} (permettant de manipuler l'état de la broche correspondante).
 +
* Utiliser une autre boucle {{fname|for}} pour manipuler les objets {{Pin}} stocké dans la liste {{pins}}. Il sera plus facile de manipuler les les LEDs dans la boucle {{fname|while True}}  
   −
Comme vous pourrez ce constater ci-dessous, l'usage d'une boucle {{fname|for}} permet de réduire le programme à quelques lignes.
+
Ces optimisations vont singulièrement raccourcir le programme.
    
  <nowiki># declaration des broches
 
  <nowiki># declaration des broches
Ligne 107 : Ligne 109 :  
Dans cette version du code, la création de la liste {{fname|pins}} est assuré par une compréhension list.... en une seule ligne de code.
 
Dans cette version du code, la création de la liste {{fname|pins}} est assuré par une compréhension list.... en une seule ligne de code.
   −
  <nowiki></nowiki>  
+
  <nowiki># declaration des broches
 +
names = ['X1','X2', 'X3', 'X4', 'X5', 'X6', 'X7', 'X8' ]
 +
# créer les objets p en sortie
 +
pins = [ pyb.Pin( name, pyb.Pin.OUT_PP ) for name in names ]
 +
while True:
 +
  for pin in pins:
 +
    pin.high()
 +
    pyb.delay(100)
 +
    pin.low()
 +
    pyb.delay(100)</nowiki>
 +
   
 
{{MicroPython-Hack-Prepare-TRAILER}}
 
{{MicroPython-Hack-Prepare-TRAILER}}
29 836

modifications

Menu de navigation