User manual

48
for i in range(w*z):
j = random.randint(0,z-1)
GPIO.output(LED[j], True); time.sleep(t)
GPIO.output(LED[j], False)
else:
print ("Entrée invalide")
except KeyboardInterrupt:
GPIO.cleanup()
5.1.1 Voilà comment cela fonctionne
La première ligne du programme avec la définition du codage UTF-8 et l'importation des bibliothèques
requises sont déjà connues grâce aux expériences précédentes. La bibliothèque
random est importée en plus
pour générer un motif clignotant aléatoire.
Lorsque ce programme a été développé, on a veillé à ce qu'il soit possible de l'utiliser de différentes façons. Il
peut donc être utilisé sans problème avec plus de quatre LED. Cette flexibilité fait aujourd'hui partie d'un bon
style de programmation. En prenant l'exemple du Raspberry Pi, ce type de programmes permet non
seulement de s'étendre vers de nouveaux ports GPIO, mais également de modifier facilement d'autres ports
GPIO lorsqu'ils sont nécessaires au niveau matériel.
LED = [4,18,23,24] Pour les LED, une liste avec les numéros de port GPIO est à nouveau définie pour que
ces ports soient établis seulement à un endroit dans le programme.
for i in LED:
GPIO.setup(i, GPIO.OUT, initial=0)
Au lieu d'initialiser les ports GPIO de chaque LED comme dans les programmes précédents, une boucle for
s'exécute cette fois pour la liste
LED. Le compteur de boucle i prend successivement chaque valeur dans la
liste, p. ex les numéros de port GPIO des LED, et n'est pas simplement incrémenté comme dans les boucles
for précédemment utilisées. De longues listes de votre choix peuvent être traitées de cette façon. La
longueur de la liste doit être ignorée lors du développement du programme.
Les quatre ports GPIO pour les LED sont définis comme des sorties et mis sur
0 pour éteindre les LED
éventuellement allumées lors des expériences précédentes.
z = len(LED); w = 5; t = 0.2