Le forum a migré vers l'adresse suivante:

Forum

Masquer ce message

Simple-Duino Index du Forum



[tutos] KeyPad


 
Poster un nouveau sujet   Répondre au sujet    Simple-Duino Index du Forum -> Arduino & Électronique -> Tutos
Sujet précédent :: Sujet suivant  
Auteur Message
oneill
Débutant

Hors ligne

Inscrit le: 03 Juin 2013
Messages: 60
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Dim 1 Déc - 14:28 (2013)    Sujet du message: [tutos] KeyPad Répondre en citant

PublicitéSupprimer les publicités ?

  
 
 
Voici le code utiliser pour faire fonctionner le keyPad  afin de faire une ouverture de porte ou allumer une LED.Après je pense que ce code fonctionne aussi avec d'autre.
Donc voici le code qui marche avec mon keyPad. Oublier pas les bibliothèque password et Keypad.


Citation:

#include <Password.h>
#include <Keypad.h>


Password password = Password( "1379" ); // Le code


const byte ROWS = 4; // 4 lignes
const byte COLS = 3; //  3colonnes
// Position des touches
char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};


byte rowPins[ROWS] = {2,3,4,5}; // Pin utilisés pour les lignes
byte colPins[COLS] = {6,7,8}; // Pin utilisés pour les colonnes


// Creation du Keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );


void setup(){
  pinMode(13, OUTPUT);
  Serial.begin(9600);
  keypad.addEventListener(keypadEvent); //ajout d'un event sur le keypad
}


void loop(){
  keypad.getKey(); // Appel de l'event du keyPad
}


//D'eclaration de l'events keyPad
void keypadEvent(KeypadEvent eKey){
  switch (keypad.getState()){
  case PRESSED:
    Serial.print("Pressed: ");
    Serial.println(eKey);
    switch (eKey){
    case '*':
      checkPassword();
      break;
    case '#':
      password.reset();
      break;
    default:
      password.append(eKey);
    }
  }
}


void checkPassword(){
  if (password.evaluate()){
    Serial.println("Success");
    password.reset();
    digitalWrite(13, HIGH);
  }
  else{
    Serial.println("Wrong");
    password.reset();
    digitalWrite(13, LOW);
  }
}




En espèrent que cela vous a été utile et
.

Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Dim 1 Déc - 15:17 (2013)    Sujet du message: [tutos] KeyPad Répondre en citant

J'ai édité pour avoir un code bien lisible
____________________________
http://simple-duino.com
Revenir en haut
oneill
Débutant

Hors ligne

Inscrit le: 03 Juin 2013
Messages: 60
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Dim 1 Déc - 15:20 (2013)    Sujet du message: [tutos] KeyPad Répondre en citant

merci c'est vrais que c'est mieux comme ça.
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Dim 1 Déc - 15:22 (2013)    Sujet du message: [tutos] KeyPad Répondre en citant

Il y a une fonction dans l'IDE: Edition --> Copier pour le forum
Après tu fais juste "coller" dans ton message et t'as rien d'autre à faire, ça met tout seul en forme !!
____________________________
http://simple-duino.com
Revenir en haut
arnaud39
Débutant

Hors ligne

Inscrit le: 01 Avr 2013
Messages: 378
Masculin
Niveau d'éléctronique: Dieu vivant

MessagePosté le: Lun 2 Déc - 22:28 (2013)    Sujet du message: [tutos] KeyPad Répondre en citant

+1 oneill !!
____________________________
Ancien admin du forum, co-fondateur tutoarduino.com
Revenir en haut
Christophe46
Débutant

Hors ligne

Inscrit le: 26 Jan 2014
Messages: 2
Masculin
Niveau d'éléctronique: Intermédiaire

MessagePosté le: Dim 26 Jan - 16:28 (2014)    Sujet du message: [tutos] KeyPad Répondre en citant

 Bonjour,


Voila je suis nouveau et donc débutant sur Arduino, je suis intéressé par un montage de digicode,
mais je ne comprends pas les 2 lignes suivantes:
Code:

byte rowPins[ROWS] = {2,3,4,5}; // Pin utilisés pour les lignes
byte colPins[COLS] = {6,7,8}; // Pin utilisés pour les colonnes
A quoi correspondent 2,3,4,5 et 6,7,8 ? Quelqu'un pourrait m'expliquer ? svp.

De plus j'ai un clavier à 16 touches avec en plus sur le coté droit A B C D, comment adapter ce code à ce clavier 4 X 4 ?



Merci de votre aide,
Cordialement
Christophe
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Lun 27 Jan - 10:17 (2014)    Sujet du message: [tutos] KeyPad Répondre en citant

Pour les deux lignes que tu ne comprends pas, ce sont simplement les numéros des prises de connexions des Lignes et des Colonnes du keypad vers l'Arduino.

Pour l'adaptation, j'ai une petite idée mais je laisse faire oneill pour pas dire de bêtises
____________________________
http://simple-duino.com
Revenir en haut
oneill
Débutant

Hors ligne

Inscrit le: 03 Juin 2013
Messages: 60
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Mer 29 Jan - 21:37 (2014)    Sujet du message: [tutos] KeyPad Répondre en citant

tu récupère le même code sauf que tu change ces lignes

const byte ROWS = 4; // 4 lignes
const byte COLS = 3; //  3colonnes
// Position des touches
char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};
byte rowPins[ROWS] = {2,3,4,5}; // Pin utilisés pour les lignes
byte colPins[COLS] = {6,7,8}; // Pin utilisés pour les colonnes

Par

Citation:


const
byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
//define the cymbols on the buttons of the keypads
char hexaKeys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};
byte rowPins[ROWS] = {5, 4, 3, 2}; //les 4 fil de gauche de la connectique du pad
byte colPins[COLS] = {9, 8, 7, 6}; //les 4 fil de droite de la connectique du pad


et si tu n'a pas les bonne donne tu met
byte rowPins[ROWS] = {2, 3, 4, 5};
byte colPins[COLS] = {6, 7, 8, 9};
Revenir en haut
oneill
Débutant

Hors ligne

Inscrit le: 03 Juin 2013
Messages: 60
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Mer 29 Jan - 21:54 (2014)    Sujet du message: [tutos] KeyPad Répondre en citant

Voila un ptit schéma pour un clavier 4*3 

 


et sinon tu a ce lien qui pourrais fortement t'aider si tu comprend un peut l'English
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Jeu 30 Jan - 12:56 (2014)    Sujet du message: [tutos] KeyPad Répondre en citant

Bien joué oneill !! comme d'hab, toujours des bons conseils  tu cartonnes
____________________________
http://simple-duino.com
Revenir en haut
oneill
Débutant

Hors ligne

Inscrit le: 03 Juin 2013
Messages: 60
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Jeu 30 Jan - 16:33 (2014)    Sujet du message: [tutos] KeyPad Répondre en citant

Sa je sais pas si je suis de bon conseil lol
Admin a écrit:

Bien joué oneill !! comme d'hab, toujours des bons conseils  tu cartonnes
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Jeu 30 Jan - 19:06 (2014)    Sujet du message: [tutos] KeyPad Répondre en citant

Visiblement, le lien que tu as donné est adapté au type de keypad 4x4 et assez bien expliquer...
Manque une Traduction !!
Nan je rigole hein, le prend pas mal  Embarassed
____________________________
http://simple-duino.com
Revenir en haut
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 08:42 (2017)    Sujet du message: [tutos] KeyPad

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Simple-Duino Index du Forum -> Arduino & Électronique -> Tutos Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB
Propulsé par Simple-Duino