Modifications

Sauter à la navigation Sauter à la recherche
2 608 octets ajoutés ,  17 mai 2012 à 17:54
Ligne 1 : Ligne 1 :  
== Qu'est ce qu'un KeyPad ==
 
== Qu'est ce qu'un KeyPad ==
Un KeyPad est typiquement un petit
+
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.
 +
 +
[[Fichier:KeyPad-schema.jpg]]
 +
 +
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 [[http://www.arduino.cc/playground/Code/Keypad 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 [http://www.arduino.cc/playground/Code/Keypad www.arduino.cc/playground/Code/Keypad].
 +
 +
L'exemple ci-dessous est basé sur la librairie KeyPad.
    
== Où Acheter ==
 
== 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.
 
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.
29 917

modifications

Menu de navigation