Radio-réveil avec Tetris pour prouver vous êtes éveillé (5 / 16 étapes)

Étape 5: Bouton debouncing

Mon document préféré sur debouncing commutateurs est «A Guide to Debouncing » de Jack G. Ganssle. Il a beaucoup d’informations mais la partie importante (selon moi) est que vous devriez debounce interrupteurs pour 50 m en d’autres termes un bouton doit être pressée pour 50 ms avant qu’elle est déclarée pressée. C’est assez long même pour les plus rudes commutateurs mais assez courte que le cerveau humain ne peut pas détecter un retard. Vous souhaitez vérifier plusieurs fois dans cette période de 50 ms, pas juste une fois et puis une fois de plus après 50 ms.

L’interruption se produit chaque ms 4,1 (voir étape 4) et je l’attends 8 consécutives lecture du bouton ouvert ou fermé de déclarer le bouton enfoncé ou non. Si le bouton doit être enfoncé ou relâché pour 8 x 4.1 ms ou Mme 32,8 je gérer cela en déplaçant une variable non signée de 1 octet vers la gauche de 1 et de mettre l’état actuel de la touche dans le bit le moins significatif. Si la variable qui en résulte est 0xFF je déclare enfoncé et si c’est 0 x 00 je déclare ne pas enfoncé. En outre, vous ne voulez pas que touche plusieurs presses pour vous inscrire si l’interrupteur est maintenue plus longtemps que les ms 32,8 donc l’état du bouton doit être actuellement ne pas pressé de déclarer enfoncé et vice versa.

J’ai aussi incrémenter une variable pour garder une trace des totale sur les touches et le nombre de touches particulière. Ces variables sont décrémentés lorsque le bouton est pris en charge dans la fonction loop() standard. De cette façon, les touches sont comptabilisés immédiatement mais le code qui fait réellement quelque chose d’utile n’est pas dans la routine d’interruption il embourber. Une routine d’interruption doit être aussi courte que possible.

Il existe des manières autres, peut-être plus simples de debounce commutateurs, mais j’ai trouvé cette manière assez robuste, fiable et utilisateur conviviale dans une variété d’applications.

Articles Liés

Canne rapide pour quand vous êtes dans le besoin

Canne rapide pour quand vous êtes dans le besoin

quand une survie en situation ou chasse et vous avez besoin un soutien sachant comment faire une canne de survie rapide vous aidera.matériaux :-bâton-couteau-ruban isolant (facultatif)Désolé pour le manque de lors de photos mais je ne pense même pas
Comment faire un multibrin longue chaine en argent Collier avec perles pour Office Lady

Comment faire un multibrin longue chaine en argent Collier avec perles pour Office Lady

Cet article tuteurs un charmant collier multirangs chaine en argent, processus décisionnel. Vous pouvez avoir une remise si vous l'adorer. Aujourd'hui, j'ai fait un charmant chaîne et collier de perles à la maison avec des matériaux simples à portée
Radio-réveil avec des fils (ou Arduino)

Radio-réveil avec des fils (ou Arduino)

Il s'agit d'un réveil élaborée sur le microcontrôleur de câblage et personnalisée pour la Colombie (il prend en vacances compte et affiche tous les textes en espagnol). Le réveil affiche l'heure, date, phase de lune, des messages personnalisés par jo
Sunrise LED radio-réveil avec alarme personnalisable chanson

Sunrise LED radio-réveil avec alarme personnalisable chanson

ma MotivationCet hiver, ma copine a eu beaucoup de mal à se réveiller le matin et semble souffrir de SAD (Seasonal Affective Disorder). J'ai même pas remarqué combien plus difficile c'est de se réveiller en hiver car le soleil n'a pas encore se lever
Comment faire une K'nex solaire radio-réveil avec construit dans lockbox et chargeur de petits appareils électroniques.

Comment faire une K'nex solaire radio-réveil avec construit dans lockbox et chargeur de petits appareils électroniques.

Here it is. Le premier knex solaire radio-réveil. Cela m'a pris plus d'un mois à concevoir, construire, reconstruire, parfait et faire des instructions. En fait, j'ai couru avec les pièces et a dû prendre plusieurs choses dehors pour le finir.En tout
Radio-réveil avec infrarouge et haut-parleurs Bluetooth

Radio-réveil avec infrarouge et haut-parleurs Bluetooth

INTRODUCTIONSalut, mon nom est Ben Hur Gonçalves, je suis un ingénieur mécatronique a obtenu son diplôme à Universidade de São Paulo, Brésil en 2010. Aujourd'hui, je travaille avec la situation réelle, mais je ne ces projets avec arduino le week-end,
Radio-réveil avec Evive

Radio-réveil avec Evive

Nous voulons faire un combiné analogique et numérique du réveil. Horloge en temps réel est essentiel pour horloge de garder le temps, même si elle est désactivée. Mais couramment disponibles panneaux de microcontrôleur comme Arduino ou Raspberry Pi n
Faire vos propres bobines pour broderie ou crochet fil avec seulement ce que vous avez autour de la maison

Faire vos propres bobines pour broderie ou crochet fil avec seulement ce que vous avez autour de la maison

j'ai broder et crochet beaucoup. Construire et vendre des kippot (couvre-chefs juives) et des ceintures et des décorations murales... et j'ai donc 1 million de différentes couleurs de fil autour. Mais ils s'emmêlent si j'essaie de couper un morceau d
Projets de 30 secondes pour améliorer votre chambre avec des trucs que vous avez déjà

Projets de 30 secondes pour améliorer votre chambre avec des trucs que vous avez déjà

tout le monde veut leur rendre la vie meilleure et plus facile, non ? Ce Instructable a pour but de le faire avec ces projets minis rapide et facile que vous pouvez faire avec des trucs que vous avez déjà à la maison, comme faire un cintre poubelle,
LED Dawn / Sunrise radio-réveil, veilleuse & sécurité Light - Arduino Compatible

LED Dawn / Sunrise radio-réveil, veilleuse & sécurité Light - Arduino Compatible

comme les nuits allongée progressivement à l'automne 2011, j'ai découvert les joies de l'Arduino et pensé qu'il serait un excellent moyen d'implémenter quelque chose que j'ai voulu pendant un long moment - une manière douce de se réveiller le matin u
Radio-réveil/compartiment Secret

Radio-réveil/compartiment Secret

Hé ! Il s'agit de mon premier instructable, et j'espère que vous l'aimez et votez pour moi au concours de compartiment et portes secrètes. :) Dans l'affirmative, Merci beaucoup !Cette instructable vous montre comment protéger l'argent dans la vue pla
Comment développer une histoire originale pour une fiction quand vous êtes hors d’inspiration...

Comment développer une histoire originale pour une fiction quand vous êtes hors d’inspiration...

Beaucoup d'écrivains amateurs décident d'écrire une fiction parce qu'ils ont déjà une histoire ou un concept à l'esprit.Cependant, il y a quelques autres peuples qui voudrait écrire, mais qui ne savent pas quoi écrire. Ils ont la motivation, mais pas
Lever de soleil radio réveil

Lever de soleil radio réveil

Beaucoup de gens trouvent le bip d'un réveil, une façon très désagréable de se réveiller. Une alternative consiste à utiliser des lumières pour vous réveiller. Par exemple, un réveil « sunrise » augmente graduellement la luminosité d'une lampe près d
Ajouter un port USB de votre Radio-réveil

Ajouter un port USB de votre Radio-réveil

Eh bien j'ai eu cette idée pratiquement de rien. J'utilise parfois mon téléphone alors que sur mon lit et le cordon est un peu trop court, ou plutôt la fiche est trop loin. On pourrait dire « Obtenir un cordon plus long » mais considérant que le plai