(3 versions intermédiaires masquées) | |||
Ligne 1 : | Ligne 1 : | ||
+ | {{ UPGRADE }} | ||
{{avertissement}} | {{avertissement}} | ||
[[Image:Bp.jpg|250px|right|thumb|<center>Un exemple de bouton poussoir</center>]] | [[Image:Bp.jpg|250px|right|thumb|<center>Un exemple de bouton poussoir</center>]] | ||
Ligne 38 : | Ligne 39 : | ||
L'utilisation d'un bouton poussoir est plus complexe qu'il n'y parait. | L'utilisation d'un bouton poussoir est plus complexe qu'il n'y parait. | ||
- | En effet, une broche de l'arduino qui n'est branchée sur rien et simplement en "écoute" reçoit des parasites électromagnétique | + | En effet, une broche de l'arduino qui n'est branchée sur rien et simplement en "écoute" reçoit des parasites électromagnétique ou électrostatiques qui peuvent être mal interprété par l'arduino. |
Dans ce cas on raccorde directement la broche soit au +5V (état haut - HIGH), soit au GND (état bas - LOW). | Dans ce cas on raccorde directement la broche soit au +5V (état haut - HIGH), soit au GND (état bas - LOW). | ||
Mais il faut utiliser une résistance de 10kohms. Ce qu'on appelle une résistance de pull up ou pull down suivant qu'elle envoie vers l'état haut (+5V) ou l'état bas (GND). | Mais il faut utiliser une résistance de 10kohms. Ce qu'on appelle une résistance de pull up ou pull down suivant qu'elle envoie vers l'état haut (+5V) ou l'état bas (GND). | ||
- | Mais ce n'est pas tout ! Un bouton poussoir c'est mécanique et imparfait : il y a des rebonds, l'électricité ne passe pas d'un état à un autre "proprement", | + | Mais ce n'est pas tout ! Un bouton poussoir c'est mécanique et imparfait : il y a des rebonds, l'électricité ne passe pas d'un état à un autre "proprement", il y a des oscillations de courant pendant quelques millisecondes qui suivent l’appui sur le bouton. |
+ | |||
+ | Pour régler ce problème, deux solutions : | ||
* la solution matériel : placer un condensateur de 10nF | * la solution matériel : placer un condensateur de 10nF | ||
* la solution logicielle : mettre une pause de environ 250 millisecondes | * la solution logicielle : mettre une pause de environ 250 millisecondes | ||
Voir l'excellent documentation de [http://eskimon.fr/96-arduino-204-un-simple-bouton http://eskimon.fr] | Voir l'excellent documentation de [http://eskimon.fr/96-arduino-204-un-simple-bouton http://eskimon.fr] | ||
+ | |||
+ | Voir également la question des "interruptions" : http://www.lambot.info/interruptions-multiples-sur-arduino/ | ||
[[Catégorie:matériel]] | [[Catégorie:matériel]] | ||
+ | [[Catégorie:Arduino]] |
Sommaire |
Il agit comme un interrupteur, mais pas tout à fait.
Le bouton poussoir est une touche mécanique qui permet de faire une liaison électrique momentanée le temps que l'on appuie dessus ou, sur certains modèles inversés, d'ouvrir temporairement le contact électrique.
source : Wikipédia
Retrouvez également le bouton poussoir sur la page Principaux composants électroniques
On peut récupérer des boutons poussoirs en démontant des Imprimantes
L'utilisation d'un bouton poussoir est plus complexe qu'il n'y parait.
En effet, une broche de l'arduino qui n'est branchée sur rien et simplement en "écoute" reçoit des parasites électromagnétique ou électrostatiques qui peuvent être mal interprété par l'arduino. Dans ce cas on raccorde directement la broche soit au +5V (état haut - HIGH), soit au GND (état bas - LOW).
Mais il faut utiliser une résistance de 10kohms. Ce qu'on appelle une résistance de pull up ou pull down suivant qu'elle envoie vers l'état haut (+5V) ou l'état bas (GND).
Mais ce n'est pas tout ! Un bouton poussoir c'est mécanique et imparfait : il y a des rebonds, l'électricité ne passe pas d'un état à un autre "proprement", il y a des oscillations de courant pendant quelques millisecondes qui suivent l’appui sur le bouton.
Pour régler ce problème, deux solutions :
Voir l'excellent documentation de http://eskimon.fr
Voir également la question des "interruptions" : http://www.lambot.info/interruptions-multiples-sur-arduino/
© Graphisme : Les Petits Débrouillards Grand Ouest (Patrice Guinche - Jessica Romero) | Développement web : Libre Informatique