User manual
53
Entrée invalide
Pour tous les programmes qui nécessitent une entrée de l'utilisateur, on doit intercepter les entrées
incorrectes. Si l'utilisateur entre une réponse imprévue, le programme doit y répondre.
else:
print ("Entrée invalide")
Si l'utilisateur a entré quelque chose d'autre, l'instruction donnée sous else est exécutée. On rencontre
toujours cette partie de requête si aucune des autres requêtes ne fournit de véritable résultat. Dans notre cas,
le programme affiche un message à l'écran.
Comme dans les expériences précédentes, le programme est quitté avec un
KeyboardInterrupt, dans
lequel l'utilisateur appuie sur la combinaison de touches
[Ctrl]+[C]. La dernière ligne ferme les ports GPIO
utilisés et éteint toutes les LED.
6 Variation de l'intensité lumineuse des LED par modulation de la largeur
des impulsions
Les LED sont des composants typiques pour émettre des signaux dans l'électronique numérique. Elles
peuvent être dans deux états différents, marche et arrêt, 0 et 1 ou
True et False. Il en est de même pour les
ports GPIO définis comme des sorties numériques. Par conséquent, il n'est théoriquement pas possible de
faire varier l'intensité lumineuse d'une LED.
Une astuce permet cependant de réguler la luminosité d'une LED sur un port GPIO numérique. Si l'on fait
clignoter assez rapidement une LED, l'œil humain ne l'interprète pas comme un clignotement. La technique
désignée comme la modulation de la largeur des impulsions génère un signal pulsé qui s’active et se
désactive à des intervalles très courts. La tension du signal reste toujours constante, seul le rapport entre le
niveau
False (0 V) et le niveau True (+ 3,3 V) est changé. Le rapport cyclique donne le rapport de la
longueur de l'état activé sur la durée totale d'un cycle de commutation.
Fig. 6.1: A gauche : Rapport cyclique : 50 % – à droite : Rapport cyclique : 20 %
Plus le rapport cyclique est cyclique, plus le temps d'éclairage de la LED est court dans un cycle de
commutation. De cette façon, une LED semble sombre comme une LED éteinte en permanence.
Pour l'expérience suivante, branchez une LED via une pré-résistance sur le port GPIO 18.