IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Arduino giga et keypad 4x4


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Juin 2023
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Juin 2023
    Messages : 15
    Par défaut Arduino giga et keypad 4x4
    Bonjour

    Je n'arrive pas a faire fonctionner correctement un pavé numérique avec l'arduino giga.
    Je suis sous Windows et j'utilise l'IDE 2.1.0.
    J'ai "uploader" le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    #include <Keypad.h>
     
    #define ROWS 4
    #define COLS 4
     
    const char kp4x4Keys[ROWS][COLS] 	= {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}};
    byte rowKp4x4Pin [4] = {9, 8, 7, 6};
    byte colKp4x4Pin [4] = {5, 4, 3, 2};
     
    Keypad kp4x4 	= Keypad(makeKeymap(kp4x4Keys), rowKp4x4Pin, colKp4x4Pin, ROWS, COLS);
     
    void setup() {
     	Serial.begin(9600);
       while (!Serial) {
        ; // wait for serial port to connect. Needed for native USB port only
      }
     	Serial.print("Initialize System");
    }
    void loop() {
     	readKp4x4();
    }
     
    void readKp4x4() { 
     
     	char customKey = kp4x4.getKey();
     	if (customKey) {
     			Serial.println(customKey);
     	}
    }
    Chose étrange, lorsque je branche le clavier sur les pins 9,8,7 ou 6 de l'arduino Nom : keypad-4x4-module.jpg
Affichages : 172
Taille : 60,4 Ko
    sur le serial monitor j'ai un défilement infini du chiffre/lettre correspondant aux pins 9,8,7 ou 6, dans mon cas le 1,4,7 ou *
    Si quelqu'un pourrait m'aider ce serait super.

    Merci.

  2. #2
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    pas sûr que la bibliothèque soit compatible avec la GIGA.... faudrait vérifier

  3. #3
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Juin 2023
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Juin 2023
    Messages : 15
    Par défaut
    Citation Envoyé par Jay M Voir le message
    pas sûr que la bibliothèque soit compatible avec la GIGA.... faudrait vérifier
    J'ai trouvé ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    virtual void pin_mode(byte pinNum, byte mode) { pinMode(pinNum, mode); }
    virtual void pin_write(byte pinNum, boolean level) { digitalWrite(pinNum, level); }
    virtual int  pin_read(byte pinNum) { return digitalRead(pinNum); }
    Est ce que ça signifie quelque chose d'interessant ?

  4. #4
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 196
    Billets dans le blog
    47
    Par défaut
    Bonjour,

    Citation Envoyé par Linoops Voir le message
    Chose étrange, lorsque je branche le clavier sur les pins 9,8,7 ou 6 de l'arduino
    Et les pins 5, 4, 3, et 2 ? Elles sont bien reliées au clavier ?

  5. #5
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Juin 2023
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Juin 2023
    Messages : 15
    Par défaut
    Citation Envoyé par f-leb Voir le message
    Bonjour,



    Et les pins 5, 4, 3, et 2 ? Elles sont bien reliées au clavier ?
    Oui les pins 2,3,4,5 sont bien reliés au clavier

  6. #6
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    Oui c’est le code de la bibliothèque… Vue la formulation, je suppose que vous n’avez rien trouvé vous même et que vous avez posé la question à plein d’endroits et que c’est dans une des réponses…(pas cool).

    il faudrait savoir si cette carte a les meme caractéristiques qu’un AVR par exemple est-ce qu’une entrée en INPUT mise HIGH.

    Regardez aussi si les pins utilisées ont d’autres fonctions actives - de mémoire il me semble qu’il y a SCL et SDA sur deux de ces pins… conflit ?

  7. #7
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Juin 2023
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Juin 2023
    Messages : 15
    Par défaut
    Citation Envoyé par Jay M Voir le message
    Oui c’est le code de la bibliothèque… Vue la formulation, je suppose que vous n’avez rien trouvé vous même et que vous avez posé la question à plein d’endroits et que c’est dans une des réponses…(pas cool).

    il faudrait savoir si cette carte a les meme caractéristiques qu’un AVR par exemple est-ce qu’une entrée en INPUT mise HIGH.

    Regardez aussi si les pins utilisées ont d’autres fonctions actives - de mémoire il me semble qu’il y a SCL et SDA sur deux de ces pins… conflit ?
    Oui effectivement j'ai posé la question pas sur plein d'autres endroits mais juste sur le forum d'Arduino en plus mais en anglais.
    Concernant l'AVR, Input et High, là tu me perds, je ne maitrise pas assez pour te suivre
    Sur les pins 8 et 9, il y a bien double fonction SDA2 et SCL2, j'ai par ailleurs déja tenté de les remplacer par les pins à partir de 31 pour écarter ce souci, mais meme resultat...

  8. #8
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    Citation Envoyé par Linoops Voir le message
    Concernant l'AVR, Input et High, là tu me perds, je ne maitrise pas assez pour te suivre
    la bibliothèque pourrait dépendre d'un mode INPUT_PULLUP implicite sur AVR quand on passe une pin qui est en INPUT (sortie) à l'état HIGH
    sur un autre type de processeur, le comportement peut-être différent. Si c'est le cas il faut modifier la bibliothèque pour forcer l'utilisation du mode INPUT_PULLUP et pas ce raccourci technique

    ==> faut creuser dans la bibliothèque mais si vous avez une discussion sur le sujet ailleurs, je vous laisse la poursuivre là bas. Revenez nous dire quand vous aurez obtenu la réponse

    (c'est mal vu de poster à deux endroits car des personnes cherchant à vous aider vont dupliquer des efforts sans voir ce qui peut être proposé par ailleurs ==> vous gaspillez du temps de ceux qui aident, c'est égoïste)

  9. #9
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Juin 2023
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Juin 2023
    Messages : 15
    Par défaut
    Citation Envoyé par Jay M Voir le message
    la bibliothèque pourrait dépendre d'un mode INPUT_PULLUP implicite sur AVR quand on passe une pin qui est en INPUT (sortie) à l'état HIGH
    sur un autre type de processeur, le comportement peut-être différent. Si c'est le cas il faut modifier la bibliothèque pour forcer l'utilisation du mode INPUT_PULLUP et pas ce raccourci technique

    ==> faut creuser dans la bibliothèque mais si vous avez une discussion sur le sujet ailleurs, je vous laisse la poursuivre là bas. Revenez nous dire quand vous aurez obtenu la réponse

    (c'est mal vu de poster à deux endroits car des personnes cherchant à vous aider vont dupliquer des efforts sans voir ce qui peut être proposé par ailleurs ==> vous gaspillez du temps de ceux qui aident, c'est égoïste)
    Ceci est bien complexe pour moi
    Finalement la solution a été de modifier le fichier keypad.h à ce niveau là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    //#ifndef INPUT_PULLUP
    #if ! (defined(INPUT_PULLUP) || (ARDUINO_API_VERSION >= 10000))
    Supprimer ou commenter la première ligne et ajouter la seconde.

  10. #10
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    ben voilà en gros ça dit à la bibliothèque de faire comme si elle ne connaissait pas INPUT_PULLUP (en testant ARDUINO_API_VERSION)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Simuler une touche "Enter" sur un keypad 4x4
    Par legrandse dans le forum Arduino
    Réponses: 10
    Dernier message: 28/09/2016, 10h12
  2. Inno Setup : Gigas et Download ?
    Par Insomniac dans le forum Installation, Déploiement et Sécurité
    Réponses: 1
    Dernier message: 15/03/2008, 12h55
  3. Augmenter heap memory à plus de 1 giga
    Par maikof dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 18/02/2008, 12h00
  4. [Matrices] Comment calculer le Déterminant d'une matrice 4x4
    Par cyber_N dans le forum Algorithmes et structures de données
    Réponses: 70
    Dernier message: 19/08/2005, 15h47
  5. optimisation de multplication matricielle 4x4
    Par kiroukou dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 08/02/2005, 09h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo