[PPE] langage C et clavier matriciel
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

[PPE] langage C et clavier matriciel



  1. #1
    invitedcc7860a

    [PPE] langage C et clavier matriciel


    ------

    Bonjour

    Je vous contacte dans le cadre d'un ppe sur l'ouverture d'un tirroir codée en c par clavier matriciel.
    J'avais creer un code au debut ou je tester à chaque fois en alimentant les lignes une par une mais malheureusement le code faisait 10ko et le pic n'a pas trop apprécié .
    Bref j'aimerai savoir si quelqu'un n'avait pas sous la main un sous programme (j'avais dit un script l'autre fois en cours et le prof m'a allumé donc maintenant j'évite) qui permettrai d'associé a un charactere la touche enfoncer?
    Comme sa pour tester les 4chiffres, je n'ai qu'a "appeller" le sous programme et ainsi avoir un code plus simple et SURTOUT plus court

    En gros si je voudrai un code qui associe a par exemple touche_enfoncer la valeur de la touche.

    -----

  2. #2
    Towl

    Re : [PPE] langage C et clavier matriciel

    Une petite idée comme ca, a voir si c'est réalisable avec tes contraintes : pourquoi ne pas faire un tableau de X cases (X étant le nombre de touches) ou chaque case contient le caractère.
    Comme ca, lorsque tu recoit un code (Y), tu fait char c = keyboard_map[Y];
    The only limiting factor of the Linux operating system, is his user. - Linus Torvalds

  3. #3
    invitedcc7860a

    Re : [PPE] langage C et clavier matriciel

    je suis d'accord sur le principe mais le clavier matriciel nécéssite 3 ou 4 test pour savoir si une touche est enfoncer et c'est la que réside le gros du soucis !

  4. #4
    Towl

    Re : [PPE] langage C et clavier matriciel

    Hum.. aurais tu un exemple rapide de code ou de type de données (meme bidon), pour voir le déroulement du programme. Par exemple, comment sais tu que 'a' est enfoncée ? et pour 'e' ?
    Si c'est suivant le principe : je recois un 0, puis un 14, puis un 1, puis un 4 et cela me donne un 'a', essaye un tableau à 4 dimensions
    The only limiting factor of the Linux operating system, is his user. - Linus Torvalds

  5. A voir en vidéo sur Futura
  6. #5
    SuperTux

    Re : [PPE] langage C et clavier matriciel

    Salut,

    J'avais creer un code au debut ou je tester à chaque fois en alimentant les lignes une par une mais malheureusement le code faisait 10ko et le pic n'a pas trop apprécié
    Tu n'as pas fait de boucle je suppose ?

    Essaye un truc du style :

    Code:
    for(i = 0; i < NB_LIGNE; i++)
    {
      eteindre_toute_les_lignes();
      alimenter_ligne(i);
    
      for(j = 0; j < NB_COLONNE; j++)
      {
        if(ligne_status(i, j) != 0)
        {
          // Touche trouvée en I / J
        }
      }
    }

  7. #6
    invitedcc7860a

    Re : [PPE] langage C et clavier matriciel

    C'est exactement ce que je recherche mais j'aimerai tout de même quelques explications si cela ne te dérange pas.

  8. #7
    SuperTux

    Re : [PPE] langage C et clavier matriciel

    Tu as la boucle principale qui va envoyer une tension a tour de role dans chaque ligne et dans cette boucle pour chaque ligne une autre va lire les colonnes à tour de role voir si il trouve la tension, et si il la trouve alors la ligne actuellement activée et la colonne actuellement lu sont celle de la touche pressée, sinon on passe a la ligne suivante ect...

  9. #8
    invitedcc7860a

    Re : [PPE] langage C et clavier matriciel

    desoler j'ai un peut de mal :

    for(i = 0; i < NB_LIGNE; i++) // il y a des commandes que je n'ai pas fait en cours j'ai vraiment du mal a comprendre a quoi sert cette ligne.
    {
    eteindre_toute_les_lignes(); // ici on a un sous programme qui eteint toute les lignes ?
    alimenter_ligne(i); // ici on a un sous prog qui alimente toute les lignes une par une c'est sa ? mais que va t-il falloir faire dans se programme ? est ce que la premiere ligne sufirai ?

    for(j = 0; j < NB_COLONNE; j++) // idem ligne 1
    {
    if(ligne_status(i, j) != 0) // C'est ici que le programme va s'arreter lorsqu'il aura reperer une tension ?
    {
    // Touche trouvée en I / J // sous quel forme la touche sortira t'elle ?
    }
    }
    }

Discussions similaires

  1. langage c pour clavier
    Par invite83855357 dans le forum Électronique
    Réponses: 15
    Dernier message: 22/02/2010, 00h10
  2. conversion binaire en 7 segments d'un clavier matriciel
    Par invite64e12149 dans le forum Électronique
    Réponses: 3
    Dernier message: 10/03/2008, 12h21
  3. Clavier matriciel avec PIC16f819
    Par invite096a1b4e dans le forum Électronique
    Réponses: 4
    Dernier message: 03/04/2007, 20h22
  4. gestion de clavier matriciel i2c
    Par invite6d875316 dans le forum Électronique
    Réponses: 2
    Dernier message: 26/01/2007, 22h49
  5. PPE : Langage C
    Par invite473b9cd8 dans le forum TPE / TIPE et autres travaux
    Réponses: 2
    Dernier message: 03/04/2006, 19h57
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...