Modifications

Sauter à la navigation Sauter à la recherche
350 octets ajoutés ,  5 octobre 2015 à 05:49
Ligne 43 : Ligne 43 :     
== Faire encore mieux ==
 
== Faire encore mieux ==
 +
 +
=== Changer le temps et la LED ===
 +
Essayez de changer le temps entre deux changement d'état de la LED.... et essayez d'allumer une autre LED.
 +
 +
=== Utiliser REPL ===
 +
Connectez vous directement sur votre pyboard en utilisant REPL pour
 +
# créez un objet pyb.LED
 +
# Allumer une LED en utilisant la méthode on().
 +
 
=== C'est Disco sur votre PyBoard ===
 
=== C'est Disco sur votre PyBoard ===
 
Jusqu'à maintenant, nous avons uniquement utilisé une seule LED mais la pyboard dispose de 4 LEDs. Commençons par créer un objet pour chaque LED comme cela, il sera possible de toutes les commander séparément. Nous faisons cela en créant une liste de LEDs à l'aide d'une "list comprehension" ([http://domeu.blogspot.be/2009/10/comprehension-list-iterateurs-et.html voyez cet exemple]).
 
Jusqu'à maintenant, nous avons uniquement utilisé une seule LED mais la pyboard dispose de 4 LEDs. Commençons par créer un objet pour chaque LED comme cela, il sera possible de toutes les commander séparément. Nous faisons cela en créant une liste de LEDs à l'aide d'une "list comprehension" ([http://domeu.blogspot.be/2009/10/comprehension-list-iterateurs-et.html voyez cet exemple]).
Ligne 60 : Ligne 69 :  
Ensuite, nous accédons à la Nième LED et nous modifions son état avec la méthode {{fname|toggle}}. Si vous exécutez ce code, vous devriez voir toutes les LEDs s'allumer puis toutes les LEDs s'éteindre.
 
Ensuite, nous accédons à la Nième LED et nous modifions son état avec la méthode {{fname|toggle}}. Si vous exécutez ce code, vous devriez voir toutes les LEDs s'allumer puis toutes les LEDs s'éteindre.
   −
Un problème que vous pourriez rencontrer lorsque vous arrêtez puis redémarrer le script, c'est que les LEDs restent dans l'état du précédent fonctionnement, ruinant ainsi votre chorégraphie Disco préparée avec tellement de soin. Nous pouvons facilement corriger ce problème en éteignant les LEDs lorsque nous initialisons le script ET en utilisant ensuite un bloc try/finally. Lorsque vous pressez CTRL-C, Micro Python génère une exception VCPInterrupt. Les exceptions signifie généralement que quelque-chose s'est mal déroulé. Vous pouvez utiliser une commande {{fname|try:}} pour "''attraper''" l'exception. Dans ce cas, il s'agit de l'arrêt du script provoqué par l'utilisateur, nous n'avons pas besoin d'attraper l'erreur mais juste d'informer Micro Python de ce qui doit être fait lorsque l'on quitte le script. C'est ce que réalise le bloc {{fname|finally}} et nous l'utilisons pour faire en sorte que toutes les LEDs soient éteinte. Le code complet est:
+
=== Bloc try finally ===
 +
Un problème que vous pourriez rencontrer lorsque vous arrêtez puis redémarrer le script, c'est que les LEDs restent dans l'état du précédent fonctionnement, ruinant ainsi votre chorégraphie Disco préparée avec tellement de soin. Nous pouvons facilement corriger ce problème en éteignant les LEDs lorsque nous initialisons le script ET en utilisant ensuite un bloc {{fname|try... finally}}. Lorsque vous pressez CTRL-C, Micro Python génère une exception VCPInterrupt. Les exceptions signifie généralement que quelque-chose s'est mal déroulé. Vous pouvez utiliser une commande {{fname|try:}} pour "''attraper''" l'exception. Dans ce cas, il s'agit de l'arrêt du script provoqué par l'utilisateur, nous n'avons pas besoin d'attraper l'erreur mais juste d'informer Micro Python de ce qui doit être fait lorsque l'on quitte le script. C'est ce que réalise le bloc {{fname|finally}} et nous l'utilisons pour faire en sorte que toutes les LEDs soient éteinte. Le code complet est:
    
  <nowiki>leds = [pyb.LED(i) for i in range(1,5)]
 
  <nowiki>leds = [pyb.LED(i) for i in range(1,5)]
29 917

modifications

Menu de navigation