MicroPython-Hack-8LEDS
En cours de traduction/élaboration. |
Ce que nous faisons
Jusque là, nous avons fait clignoter une LED, il est maintenant temps d'augmenter les enjeux. Connectons donc huit LEDs. Nous allons aussi avoir l'opportunité de tirer le maximum de notre Pyboard en créant différentes séquences lumineuses. Ce circuit est aussi un bon point de départ pour commencer à faire vos expériences en écrivant vos propres programmes et pour essayer de comprendre comment fonctionne votre PyBoard.
En même temps que contrôler les LEDs, nous allons aussi nous intéresser à quelques méthodes de programmation rudimentaires permettant de garder des programmes petites tailles. La boucle for est utilisée lorsque qu'il est nécessaire d'exécuter un morceau de code plusieurs fois.
Une liste leds sera utilisée pour gérer les variables plus facilement (cette liste représentera une liste de variables).
Matériel nécessaire
Résistance de 1 KOhms (brun-noir-rouge)
x8
LEDs (ou DELs)
x8
Schéma
Montage
Fichier:Hack-8LEDs-montage.jpg
Le code
Voici le code permettant de tester votre montage
# declaration des broches names = ['X1','X2', 'X3', 'X4', 'X5', 'X6', 'X7', 'X8' ] # créer les objets Pin configuré en sortie (OUT_PP) pins = [] for name in names: pins.append( pyb.Pin( name, pyb.Pin.OUT_PP ) ) while True: for pin in pins: pin.high() pyb.delay(100) pin.low() pyb.delay(100)
Nous commençons par créer une liste names qui contient les noms des broches utilisées sur notre PyBoard.
Nous avons scrupuleusement respecté l'ordre des broches dans cette liste.
L'instruction pins = [] crée une liste vide. Nous la remplirons avec les objets de type Pin que nous allons créer. Ces objets Pin nous permettrons de contrôler directement l'état des broches.
Ensuite, nous utilisons une boucle for pour créer les objets Pin et les ajouter à la liste pins.
Dans cette première version du programme, nous allons contrôler directement chacune des LEDs.
Faire encore mieux
Animer avec une boucle FOR
Dans cette version du programme, nous avons remplacer le contenu de la boucle while True pour raccourcir le programme.
Comme vous pourrez ce constater ci-dessous, l'usage d'une boucle for permet de réduire le programme à quelques lignes.
# declaration des broches names = ['X1','X2', 'X3', 'X4', 'X5', 'X6', 'X7', 'X8' ] # créer les objets Pin configuré en sortie (OUT_PP) pins = [] for name in names: pins.append( pyb.Pin( name, pyb.Pin.OUT_PP ) ) while True: for pin in pins: pin.high() pyb.delay(100) pin.low() pyb.delay(100)
La deuxième boucle for allume et éteint chacune des LEDs à tour de rôle.
En cours de traduction/élaboration. |
Source: Micro Python Intro écrit par/written by Damien P.George
Traduit par Meurisse D. pour MCHobby.be - Translated by Meurisse D. for MCHobby.be
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.
Traduit avec l'autorisation de micropython.org - Translated with the authorisation of micropython.org