Étape 2: Utilisation de Modulation de largeur d’impulsions (PWM)
Pulse Width Modulation (PWM) est une technique permettant de simuler des valeurs analogiques sur une broche numérique. Il y a plusieurs broches numériques sur l’Arduino qui prennent en charge PWM selon le Conseil que vous utilisez. Par exemple, le Yun nous utilisons dans cet atelier prend en charge PWM 8 bits (0-255) sur les broches numériques 3, 5, 6, 9, 10, 11 et 13 à l’aide de la fonction analogWrite().
PWM simule les données analogiques en créant une onde carrée (essentiellement une répétition basculer entre marche et arrêt) où la durée de « on » time est la largeur d’impulsion. Si l’onde carrée a une largeur d’impulsion de 50 % (plus communément appelée un facteur de marche), puis la sortie de cette broche est une quantité égale de sur et en dehors. Si le facteur de marche 25 % puis la sortie de la broche sera éteint pour trois fois tant que c’est sur (25 %, 75 % de réduction).
Parce que les fenêtres de temps d’un cycle est trop rapide pour le œil humain à percevoir (environ 2 millisecondes sur les broches de l’Arduino qui prennent en charge PWM), au lieu de provoquer une LED pour stroboscope ou scintillement, il semble tout simplement être plus ou moins lumineux. À l’aide d’un cycle de 25 % la LED serait sur (haut débit) pour la moitié d’une milliseconde et off pour 1,5 millisecondes qui rend la LED semblent être à 25 % de luminosité. Ainsi, alors que nous ne sommes pas vraiment envoi données analogiques à une LED digital, nous utilisons PWM pour simuler l’effet de données analogiques.