Exercices avec les interrupteurs
Exercice 1 :
Connecter l'interrupteur \xE0 un pin GPIO. L'interrupteur m\xE9canique 1-button du kit WeMos D1 utilise GPIO 22.
a) \xC9crire un script qui lit l'\xE9tat de l'interrupteur \xE0 un intervalle de 100 ms et imprime le r\xE9sultat. Utiliser la r\xE9sistance "pull-up" du port GPIO de l'ESP32.
b) Modifier le programme pour imprimer seulement quand l'\xE9tat de l'interrupteur change.
c) Allumer la LED sur la carte CPU si l'interrupteur est pouss\xE9.
Exercice 2 :
Accomplir la m\xEAme tache qu\x92exercice 1b mais en utilisant les interruptions et une routine "callback".
Exercice 3 :
Combiner cet exercice avec l'exercice des LEDs: Allumer la LED utilisateur sur la carte CPU si le bouton est press\xE9 et l'\xE9teindre quand le bouton est rel\xE2ch\xE9.
Exercice 4 :
Modifi\xE9 l'exercice 3 de telle sorte que la LED est enclench\xE9 si le bouton est press\xE9 une premi\xE8re fois et d\xE9clench\xE9 si on pousse le bouton une deuxi\xE8me fois. On trouve ce type d'interrupteurs sur les lampes de bureau. Vous pouvez trouver que votre programme ne marche pas correctement d'une mani\xE8re al\xE9atoire ce qui peut \xEAtre caus\xE9 par des rebonds de l'interrupteur (switch bouncing). Dans ce cas rajouter \xE0 votre programme un algorithme qui ne prend pas en compte des changements d'\xE9tat de l'interrupteur pendent 20 ms apr\xE8s le premier changement. (Attendre que l'\xE9tat de l'interrupteur se stabilise).
Attention : Les rebonds arrive aussi bien en poussant le bouton qu\x92en le rel\xE2chant.
Exercice 5 :
L'ESP32 poss\xE8de une interface pour lire les capteurs de touch\xE9 capacitifs. (voir
https://docs.micropython.org/en/latest/esp32/quickref.html?highlight=touchpad#capacitive-touch)
\xC9crire un script qui d\xE9termine si le bout d'un c\xE2ble a \xE9t\xE9 touch\xE9 ou non. On peut aussi allumer la LED si le c\xE2ble est touch\xE9 et l'\xE9teindre sinon.
Exercice 6 :
\xC9crire un programme qui v\xE9rifie avec un capteur PIR si une personne est proche.
-- %USERSIG{UliRaich - 2021-07-05}%