Différences entre versions de « KeyPad »
Ligne 66 : | Ligne 66 : | ||
=== Montage === | === Montage === | ||
− | En plus d'utiliser le keypad, nous avons aussi profité de l'occasion pour exploiter notre [assortiment de cable pour Breadboard] (simple, pratique et efficace). | + | En plus d'utiliser le keypad, nous avons aussi profité de l'occasion pour exploiter notre [http://mchobby.be/PrestaShop/product.php?id_product=82 assortiment de cable pour Breadboard] (simple, pratique et efficace). |
[[Fichier:Keypad-montage.jpg]] | [[Fichier:Keypad-montage.jpg]] | ||
Version du 17 mai 2012 à 19:34
Qu'est ce qu'un KeyPad
Un KeyPad est typiquement un clavier de saisie numérique.
Le plus courant ne comporte que des chiffres (de 0 à 9 avec les caractères * et #).
Il en existe également des un peu plus évolués proposant une colonne supplémentaire pour que vous puissiez y placer vos propres fonctions.
Ce qui est sympathique avec les KeyPad, c'est que si vous n'avez pas besoin de la colonne complémentaire, il vous suffit simplement de l'ignorer (de ne pas la raccorder).
Principe de fonctionnement
Principe électrique
Le principe de fonctionnement d'un KeyPad est excessivement simple.
Un keypad n'est qu'une matrice de contact (de boutons). Quand un utilisateur appuie sur une touche il met une colonne en contact avec une ligne. C'est aussi simple que cela.
Dans le schéma ci-dessus, lorsque l'utilisateur presse:
- la touche 9, il met en contact la ligne 3 et la colonne 3.
- la touche B, il met en contact la ligne 2 et la colonne 4.
- la touche 1, il met en contact la ligne 1 et la colonne 1.
Détection de la touche pressée
Le principe est tout aussi simple mais avant ces quelques explications, vous devez savoir qu'Arduino dispose d'une librairie permettant d'utiliser facilement un KeyPad.
Pour effectuer la détection de touche sur un keyPad, le programme de votre microcontrolleur doit:
- Initialiser toutes les broches colonnes sorties (et les mettre en niveau BAS).
- Initialiser toutes les broches ligne en entrée (et les mettre en niveau HAUT).
Le processus de détection se fait comme suit:
- Activer la colonne 1 (HAUT)
- Lire ligne 1 --> Si Haut TOUCHE 1 pressée
- Lire ligne 2 --> Si Haut TOUCHE 2 pressée
- Lire ligne 3 --> Si Haut TOUCHE 3 pressée
- Lire ligne 4 --> Si Haut TOUCHE A pressée
- Désactiver la colonne 1 (BAS)
- Activer la colonne 2 (HAUT)
- Lire ligne 1 --> Si Haut TOUCHE 4 pressée
- Lire ligne 2 --> Si Haut TOUCHE 5 pressée
- Lire ligne 3 --> Si Haut TOUCHE 6 pressée
- Lire ligne 4 --> Si Haut TOUCHE B pressée
- Désactiver la colonne 2 (BAS)
- Activer la colonne 3 (HAUT)
- ... et ainsi de suite jusqu'à la colonne 4.
Une librairie c'est mieux
Pas besoin de développer un logiciel permettant de faire la lecture des KeyPad.
Arduino dispose de la librairie [KeyPad]. Il ne fait même pas l'installer, elle est disponible d'origine avec Arduino IDE.
Pour plus d'information sur cette librairie, vous pouvez vous rendre sur www.arduino.cc/playground/Code/Keypad.
L'exemple ci-dessous est basé sur la librairie KeyPad.
Exemple
L'exemple suivant fait la détection de la touche pressée et renvoi son nom sur la connexion série (Arduino IDE).
Il est basé sur le KeyPad proposé chez MC Hobby. Keypad dont le raccordement électrique correspond à ce qui suit.
Détail du brochage du KeyPad
Montage
En plus d'utiliser le keypad, nous avons aussi profité de l'occasion pour exploiter notre assortiment de cable pour Breadboard (simple, pratique et efficace).
Où Acheter
MC Hobby propose à la vente un KeyPad 16 touches, ce qui permet d'avoir les touches numérique habituelle ainsi qu'une colonne de complémentaire avec les lettres A,B,C & D.
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.