Both sides previous revisionPrevious revisionNext revision | Previous revision |
fr:examples:digi:switch_debounce [2010/03/08 14:33] – sdeniaud | fr:examples:digi:switch_debounce [2020/07/20 09:00] (current) – external edit 127.0.0.1 |
---|
====== Élimination du rebond d'un interrupteur ====== | ====== Élimination du rebond d'un interrupteur ====== |
| |
//Connaissances nécessaires: [HW] [[en:hardware:homelab:digi]], [AVR] [[en:avr:io]], [LIB] [[en:software:homelab:library:pin]], [LIB] [[en:software:homelab:library:delay]], [PRT] [[en:examples:digi:switch]]// | //Necessary knowledge: [HW] [[en:hardware:homelab:digi]], [AVR] [[en:avr:io]], [LIB] [[en:software:homelab:library:pin]], [LIB] [[en:software:homelab:library:delay]], [PRT] [[en:examples:digi:switch]]// |
| //Connaissances nécessaires: [HW] [[fr:hardware:homelab:digi]], [AVR] [[fr:avr:io]], [LIB] [[fr:software:homelab:library:pin]], [LIB] [[fr:software:homelab:library:delay]], [PRT] [[fr:examples:digi:switch]]// |
| |
===== Théorie ===== | ===== Théorie ===== |
La principale méthode utilisée pour éviter le clignotement est de filtrer le rebond causé par les contacteurs. Le filtrage peut être réalisé électriquement ou par un programme. Pour filtrer électriquement, l'interrupteur doit être connecté à un filtre passe-bas - comme par exemple un filtre RC - qui lisse les changements de tension. Par conséquent, les broches du micro-contrôleur ne sont pas perturbées par des valeurs transitoires. Le filtre RC est présenté sur le schéma. Le filtrage par un programme est réalisé en estimant la valeur de la patte à laquelle est connectée l'interrupteur ; si la valeur est la même pendant un laps de temps prédéfini, on considère que la position est stable et n'est donc pas concerné par l'effet de clignotement. Cependant, pour chaque types de filtrage, un facteur de délai pour définir l'état doit être pris en compte. | La principale méthode utilisée pour éviter le clignotement est de filtrer le rebond causé par les contacteurs. Le filtrage peut être réalisé électriquement ou par un programme. Pour filtrer électriquement, l'interrupteur doit être connecté à un filtre passe-bas - comme par exemple un filtre RC - qui lisse les changements de tension. Par conséquent, les broches du micro-contrôleur ne sont pas perturbées par des valeurs transitoires. Le filtre RC est présenté sur le schéma. Le filtrage par un programme est réalisé en estimant la valeur de la patte à laquelle est connectée l'interrupteur ; si la valeur est la même pendant un laps de temps prédéfini, on considère que la position est stable et n'est donc pas concerné par l'effet de clignotement. Cependant, pour chaque types de filtrage, un facteur de délai pour définir l'état doit être pris en compte. |
| |
===== Entrainement ===== | ===== Pratique ===== |
| |
Le filtrage électrique ne sera pas utilisé dans les interrupteurs du //Home Lab// car il ne permettrait pas d'exercer l'élimintation d'une mauvais interruption à l'aide d'un programme. L'exercice est en deux parties. Le but de la première partie est de montrer le rebond des des interrupteurs du module d'entrée - sortie numérique. Le programme suivant est utilisé pour cela ; chaque pression sur le bouton allume la LED suivante sur la ligne. Mal appuyer sur le bouton causerait le clignotement des LED plusieurs fois et on pourrait croire ainsi qu'elles s'allument aléatoirement. | Le filtrage électrique ne sera pas utilisé dans les interrupteurs du //Home Lab// car il ne permettrait pas d'exercer l'élimintation d'une mauvais interruption à l'aide d'un programme. L'exercice est en deux parties. Le but de la première partie est de montrer le rebond des des interrupteurs du module d'entrée - sortie numérique. Le programme suivant est utilisé pour cela ; chaque pression sur le bouton allume la LED suivante sur la ligne. Mal appuyer sur le bouton causerait le clignotement des LED plusieurs fois et on pourrait croire ainsi qu'elles s'allument aléatoirement. |