Ligne 1 : |
Ligne 1 : |
| == Qu'est ce qu'un KeyPad == | | == Qu'est ce qu'un KeyPad == |
− | Un KeyPad est typiquement un clavier de saisie numérique. | + | Un KeyPad est typiquement un clavier de saisie numérique, il existe sous différente forme, en clavier/membrane souple ou clavier solide (en ABS). |
| | | |
| Le plus courant ne comporte que des chiffres (de 0 à 9 avec les caractères * et #). | | Le plus courant ne comporte que des chiffres (de 0 à 9 avec les caractères * et #). |
Ligne 6 : |
Ligne 6 : |
| Il en existe également quelques-uns peu plus évolués proposant une colonne supplémentaire pour que vous puissiez y placer vos propres fonctions. | | Il en existe également quelques-uns peu plus évolués proposant une colonne supplémentaire pour que vous puissiez y placer vos propres fonctions. |
| | | |
− | [[Fichier:KeyPad.jpg|250px]] | + | [[Fichier:KeyPad.jpg|250px]] [[Fichier:KeyPad-PVC.jpg|250px]] |
| | | |
| 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). | | 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). |
Ligne 24 : |
Ligne 24 : |
| * la touche B, il met en contact la ligne 2 et la colonne 4. | | * 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. | | * la touche 1, il met en contact la ligne 1 et la colonne 1. |
| + | |
| + | '''Un autre exemple''' est celui du clavier PVC. |
| + | |
| + | [[Fichier:KeyPad-PVC-schema.jpg|480px]] |
| + | |
| + | Dans le cas de ce KeyPad, lorsque l'on presse la touche '''"6"''', la colonne 3 est mise en contact avec la ligne 2. Cela signifie que les contacts/broches 3 et 6 sont mises en contact. |
| | | |
| === Détection de la touche pressée === | | === Détection de la touche pressée === |
Ligne 75 : |
Ligne 81 : |
| === Détail du brochage du KeyPad === | | === Détail du brochage du KeyPad === |
| | | |
− | [[Fichier:Keypad-detail.jpg|350px]] | + | [[Fichier:Keypad-detail.jpg|350px]] [[Fichier:KeyPad-PVC-schema.jpg|350px]] |
| | | |
| === Montage === | | === Montage === |
| | | |
− | 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). | + | En plus d'utiliser le keypad, nous avons aussi profité de l'occasion pour exploiter notre {{pl|82|assortiment de câble pour Breadboard}} (simple, pratique et efficace). |
| | | |
| [[Fichier:Keypad-montage.jpg]] | | [[Fichier:Keypad-montage.jpg]] |
Ligne 116 : |
Ligne 122 : |
| === Programme === | | === Programme === |
| Chargez le programme suivant sur votre Arduino et ouvrez le moniteur série. | | Chargez le programme suivant sur votre Arduino et ouvrez le moniteur série. |
| + | |
| + | Il est prévu pour le KeyPad à Membrane mais vous pourrez facilement le modifier l'autre KeyPad |
| | | |
| Lorsque vous pressez une touche, cette dernière est affichée dans le moniteur série. | | Lorsque vous pressez une touche, cette dernière est affichée dans le moniteur série. |
| + | <syntaxhighlight lang="c"> |
| + | // FR: Exemple d'utilisation de la librairie KeyPad - Compatible Arduino V1.0 |
| + | // EN: Sample of use of the KeyPad library - Compatible Arduino V1.0 |
| + | // |
| + | // FR: Si vous voulez utiliser ce programme sur un Arduino V1.0 vous aurez probablement |
| + | // besoin de télécharger la librairie Keypad et de la modifier (une seule ligne) pour |
| + | // pouvoir la compiler sans erreur. |
| + | // Pour plus de détail, voir cet article sur le Wiki de MC Hobby. |
| + | // http://mchobby.be/wiki/index.php?title=KeyPad#Librairie_pour_Arduino_1.0 |
| + | // |
| + | // EN: If you want to compile this program under Arduino V1.0, you will probably need to |
| + | // download the Keypad library and to modify it (only one line). After the modification |
| + | // The program will compile without error. |
| + | // For more details, please see this article on the MC Hobby Wiki |
| + | // http://mchobby.be/wiki/index.php?title=KeyPad#Librairie_pour_Arduino_1.0 |
| + | // |
| + | // Source: http://arduino.cc/fr/Main/LibrairieKeypad |
| + | // License: CC-BY-SA for source |
| + | // License: CC-BY-SA for modification (by MC Hobby, http://www.mchobby.be ) |
| + | // |
| + | #include <Keypad.h> |
| + | |
| + | const byte ROWS = 4; //4 Lignes (4 Lines, 4 rows) |
| + | const byte COLS = 4; //4 Colonnes (4 columns) |
| + | char keys[ROWS][COLS] = { |
| + | {'1','2','3', 'A'}, |
| + | {'4','5','6', 'B'}, |
| + | {'7','8','9', 'C'}, |
| + | {'*','0','#', 'D'} |
| + | }; |
| + | |
| + | // FR: Connecté sur les lignes du KeyPad (L1, L2, L3, L4) |
| + | // EN: Connect to the row pinouts of the keypad |
| + | byte rowPins[ROWS] = {9, 8, 7, 6}; |
| + | |
| + | // FR: Connecté sur les colonnes dy KeyPad (C1, C2, C3, C4) |
| + | // EN: connect to the column pinouts of the keypad |
| + | byte colPins[COLS] = {5, 4, 3, 2}; |
| + | |
| + | Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); |
| + | |
| + | void setup(){ |
| + | Serial.begin(9600); |
| + | } |
| + | |
| + | void loop(){ |
| + | char key = keypad.getKey(); |
| | | |
− | xxx
| + | if (key != NO_KEY){ |
| + | Serial.println(key); |
| + | } |
| + | } |
| + | </syntaxhighlight> |
| | | |
| Voici le résultat que nous obtenons avec un Arduino R3 & Arduino 1.0 | | Voici le résultat que nous obtenons avec un Arduino R3 & Arduino 1.0 |
Ligne 136 : |
Ligne 195 : |
| | | |
| == 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.
| + | * {{pl|83|un KeyPad 16 touches à Membrane}}, ce qui permet d'avoir les touches numérique habituelle ainsi qu'une colonne de complémentaire avec les lettres A,B,C & D. |
| + | * {{pl|910|un KeyPad 16 touche en PVC}} |
| + | * {{pl|489|un KeyPad 4 touches à Membrane}} |
| | | |
| {{MCH-Accord}} | | {{MCH-Accord}} |