Interfacage d'un clavier avec un PIC
Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 34

Interfacage d'un clavier avec un PIC



  1. #1
    azertylr

    Interfacage d'un clavier avec un PIC


    ------

    Bonjour,
    Pour la realisation de mon gradateur j'ai besoin d'utiliser un clavier 12 touches.
    J'ai essayer avec la platine de ma regul de chauffage où j'avais prevu de mettre un clavier .
    Sur le port E il y a les colonnes et les lignes sur le port C (pin 0 1 2 et 5) (PIC16F877A).
    Quand je branche rien sur le port C et que je le lit, les valeurs sont aleatoires. Quand je met le clavier c'est pareil :'(
    La resistance de contact d'une touche est de 40-50 ohm. Est ce qu'il y a un risque de bousiller le clavier ou les sorties du PIC car ca fait 110mA sous 5V (je ne connais pas l'impedance des entrées du PIC)

    J'ai essayer de ligne les colonnes puis les lignes pour trouver de quel touche il s'agit mais vu qu'il y a des parasites ca marche pas trop :'(.

    Avez vous des conseils pour la realisation de mon interface clavier de mon gradateur ?

    Merci beaucoup

    -----

  2. #2
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    il faut des résistances de tirages sur les entrées. Si elles restent "en l'air", il est normal de lire n'importe quoi.

    A+

  3. #3
    verdifre

    Re : Interfacage d'un clavier avec un PIC

    bonsoir,
    je crois qu'il y a une note d'application microchip a ce sujet
    fred

  4. #4
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    J'ai trouvé ceci : http://ww1.microchip.com/downloads/e...tes/00529e.pdf

    Ils disent de mettre des resistances de 10K en serie avec la sortie et les colonnes et de mettre des resistance de pull-up de 100K sur les lignes. Par contre ca complique vu qu'ils mettent aussi un affichage 7 segments.

    Par contre ici : http://membres.lycos.fr/epatix/pic.htm il n'utilise pas de resistance de pull-up.

  5. A voir en vidéo sur Futura
  6. #5
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    Dans le 2ème lien, les pull up sont intégrées au port B.

    Il suffit de les activer.

    A+

  7. #6
    verdifre

    Re : Interfacage d'un clavier avec un PIC

    bonjour,
    si tu prends la configuration avec les pull up de 100 k et les resistances de 10 k en serie, tu es assuré, même en cas de fausse manip, de ne pas griller tes sorties. Ca te permet aussi d'utiliser tes E/S clavier pour faire autre chose simultaneement.
    fred

  8. #7
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Salut,
    C'est quoi que tu appelle fausse manip ?

    Il y a un truc que je trouve bizarre, j'ai mis le clavier et une sortie a 1 et quand j'appuye sur une touche, il y a une entrée du PIC qui a du +5V, jusqu'a la normal. Mais quand je lit ce port (E) il me met 000 alors qu'il devrait y avoir 100. Quel est le probleme ?

    Merci beaucoup

  9. #8
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    C'est quoi que tu appelle fausse manip ?
    verdifre veut parler d'une erreur de programmation qui pourrait griller ton port. Si tu mets involontairement tout ton port en sortie et que tu appuies sur un touche, tu risques un court-circuit sur les 2 sorties connectées.

    Ca peut vite arriver car la méthode la plus efficace pour décoder un clavier matricé consiste à "retourner" les E/S du port: Tu mets par exemple les lignes en sorties et les colonnes en entrée et tu envoies des '1' sur les sorties. Tu lis les entrées, tu bascules les entrées en sorties en les sorties en entrées et tu renvoies la donnée que tu viens de lire. Tu lis à nouveau et tu as un code unique correspondant à la touche appuyée.

    Il n'y a pas plus rapide.

    Pour ton problème je ne vois pas.

    A+

  10. #9
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Citation Envoyé par Jack
    verdifre veut parler d'une erreur de programmation qui pourrait griller ton port. Si tu mets involontairement tout ton port en sortie et que tu appuies sur un touche, tu risques un court-circuit sur les 2 sorties connectées.
    Aie, ca m'embeterai de boussiler mon PIC je vais certainement mettre ces resistances alors.
    Je ferai le schema cette semaine.

    Ca peut vite arriver car la méthode la plus efficace pour décoder un clavier matricé consiste à "retourner" les E/S du port: Tu mets par exemple les lignes en sorties et les colonnes en entrée et tu envoies des '1' sur les sorties. Tu lis les entrées, tu bascules les entrées en sorties en les sorties en entrées et tu renvoies la donnée que tu viens de lire. Tu lis à nouveau et tu as un code unique correspondant à la touche appuyée.

    Il n'y a pas plus rapide.
    C'est ce que j'ai commencé a faire pour mon programme mais vu qu'il n'y a pas de resistances de pull-up ca marche pas.

    Pour ton problème je ne vois pas.
    Je vais refaire des test.

  11. #10
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    C'est ce que j'ai commencé a faire pour mon programme mais vu qu'il n'y a pas de resistances de pull-up ca marche pas.
    Tu peux en souder en "volant" ou activer les pull-up internes du port si tu utilises le port B.

    A+

  12. #11
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    J'utilise le PORTC donc pas de pull-up interne et les trucs volants j'aime pas trop

  13. #12
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    les trucs volants j'aime pas trop
    En attendant, ça t'aurait permis d'avancer.

    A+

  14. #13
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Salut,
    Concernant l'antirebond, est-ce plus simple de le faire de maniere soft ou hard ?
    Je pense que de maniere hard ce serait plus simple car niveau logiciel ca va déjà etre compliqué !
    Je pense serieusement a mettre un PIC16F628 dédié aux sortie et le 16F877 dedié a l'affichage/clavier/heure.

    Merci de ton aide.

  15. #14
    verdifre

    Re : Interfacage d'un clavier avec un PIC

    bonjour,
    n'importe quel pic est capable de gerer l'ensemble correctement, il suffit de se creuser la tete sur le schéma et sur le programme, maintenant, ces composants etant tellement bon marché, il peut etre interessant de les sous employer pour se simplifier la vie, ou pour faire des modules que l'on a plus qu'a assembler aprés.
    Un module affichage clavier peut etre present dans beaucoup d'applications, alors en avoir un tout fait sous le coude peut etre interessant.
    fred

  16. #15
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Salut,
    Ce que j'ai peur c'est de ne pas arriver a gerer les 2 sorties du gradateurs et les differentes heures programmées.
    Je vais certainement prevoir un emplacement pour un 16F628 et je verais si je l'utilise ou pas.

    Pas de réponses pour l'anti rebond ?

    Merci

  17. #16
    verdifre

    Re : Interfacage d'un clavier avec un PIC

    bonsoir,
    c'est pareil pour l'anti-rebond, a l'extreme tu peux utiliser un 555 ou même un pic 10... pour gerer les rebonds de chaque touche ( tu peux y aller ca coute pas cher) mais ton pic principal peux aussi trés bien faire cela, il suffit de se creuser un peu la tete.
    fred

  18. #17
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Salut,
    lol je vais pas mettre 3 PICs !!
    Je demandais si il y avait un moyen hard de le faire (condensateurs ?).
    Sinon j'ai pensé a utilisé une interruption du timer tout les 32ms par exemple et verifier si il y a une touche d'appuyé toute les 32ms donc.

    J'ai reflechi un peu comment je vais programmer tout ca et pour les alarmes je ne sais pas si je les limite (par exemple 2 par sorties soit 8 alarmes) ou alors si j'en met un nombre "illimité" (cela risque de compliquer la gestion par clavier/écran).
    Je prevoirai un emplacement pour un EEPROM (ca coute rien).

  19. #18
    invite2562e666

    Re : Interfacage d'un clavier avec un PIC

    Salut, Azer$
    Ne mets surtout pas trois PICs
    Pour ma solution, après un apui sur un bouton, et je compte 20 (=200msec) impulsions secteur avant de ré-activer les interruptions du clavier :
    - cela évite le problème de l'anti-rebond
    - Si tu laisses le bouton appuyé, l'auto incrémentation est automatique
    thierry

  20. #19
    invite2562e666

    Re : Interfacage d'un clavier avec un PIC

    Salut, Azer$
    Ne mets surtout pas trois PICs
    Pour ma solution, après un apui sur un bouton (qui déclenche l'interruption clavier et qui l'inhibibe directement), et je compte 20 (=200msec) impulsions 0 secteur avant de ré-activer les interruptions du clavier :
    - cela évite le problème de l'anti-rebond
    - Si tu laisses le bouton appuyé, l'auto incrémentation est automatique
    thierry

  21. #20
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Salut,
    Je vais en mettre 2 (c'est deja pas mal pour un montage de ce type) qui communiqueront en USART ou alors en I2C soft.
    Sur un PIC il n'y a qu'une entrée pour les interruptions (c'est pour ca que tu les deteste ? ) donc a chaque fois il faut verifié si on appuye sur une touche ou pas.
    J'avais pensé a utiliser les impulsions secteurs pour la gestion de retroeclairage de l'ecran LCD (10s) et de l'ecran LCD (1min par exemple).
    Je vais me pencher sur le schema de la carte mere ce matin et poster tous cela quand j'aurais avancé.

    Merci beaucoup

  22. #21
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Bonjour,
    J'ai mis des resistances de 10K en serie avec le clavier. J'utiliserai les resistances de pull-up du PORTB.
    Vu que la synchro est aussi sur le PORTB (INT) est-ce qu'il y a un probleme pour activer les resistances de pull-up ?
    Faut-il que je mette une resistance en serie avec l'entrée synchro pour eviter tout probleme de programmation ?

    Concernant la liaison entre les 2 PICs en USART, il faut que je relie comment les pins des PICs ?

    http://azertylr.free.fr/simuaube/mere.png

    Merci beaucoup.

  23. #22
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Bonjour,
    Voici le schema de la carte mère : http://azertylr.free.fr/simuaube/mere.png

    Est-ce que les connexions pour le clavier sont bien réalisées ?
    Il faut mettre des resistances de pull-up ou en pull-down ?

    Merci a tous.

  24. #23
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    Il me semble qu'il n'y a pas besoin de pull-up ou pull-down externes, le port B possèdant ses propres pull-up internes.

    Il suffit donc de mettre un '0' sur les sorties pour détecter un appui sur une touche. Les pattes PB4 à PB7 permettent de plus de générer une interruption sur tout changement d'état.

    A+

  25. #24
    umfred

    Re : Interfacage d'un clavier avec un PIC

    Euh.. je pense que tu vas avoir un problème pour faire communiquer tes PIC ensemble si tu utilises leur USART. il faut croiser RX et TX (TX de l'un sur le RX de l'autre)

  26. #25
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Citation Envoyé par Jack
    Il me semble qu'il n'y a pas besoin de pull-up ou pull-down externes, le port B possèdant ses propres pull-up internes.

    Il suffit donc de mettre un '0' sur les sorties pour détecter un appui sur une touche. Les pattes PB4 à PB7 permettent de plus de générer une interruption sur tout changement d'état.

    A+
    Salut,

    Effectivement, il y a des resistances de pull-up intégrées au port B mais vu que RB0 sera relié a la synchronisation secteur (donc en sortie) et que les autres pins (RB1 à 7) seront alternativement en entrée et en sortie, je peux quand meme utiliser ces resistances internes ?

    Je savais pas que RB4 a RB7 peuvent generer une interruption, c'est très interessant !

    Merci beaucoup.

  27. #26
    azertylr

    Re : Interfacage d'un clavier avec un PIC

    Citation Envoyé par umfred
    Euh.. je pense que tu vas avoir un problème pour faire communiquer tes PIC ensemble si tu utilises leur USART. il faut croiser RX et TX (TX de l'un sur le RX de l'autre)
    Salut,
    Sur mon schema je n'ai pas relié les Rx et Tx car je ne savais pas comment les relier.
    Rx sur Tx et Tx sur Rx donc.
    Je vais aussi prévoir une liaison I2C software et une liaison OneWire.

    Merci beaucoup.

  28. #27
    invite1f828489

    Re : Interfacage d'un clavier avec un PIC

    bonjour,
    moi c tiaco,
    excuser moi de minsérer comme ca dans une discution mai je trouve le sujet pa si eloigner et jaimerai bien kon me renseigne sur un truc.
    voila,moi g un autre souci,jessai de reconstituer une interface entre un clavier et un µc et g besoin d'un bus I2C pour la transmission des données qui se feront donc sur 11 bit d'apré le protocol du clavier MF2,le truc c'est que le bus I2C a un bit de parité qui me pose un probleme et jaimerai savoir coment contourner cela en evitant d'utiliser ce bit,je pourai le faire avec le soft mai moi je voudrai maranger autremen,est ce que quelqun a une idée svp
    merci
    cordialement
    tiaco

  29. #28
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    Ca commence mal, ton affaire, car le protocole I2C ne prévoit pas de bit de parité.

    A+

  30. #29
    Jack
    Modérateur

    Re : Interfacage d'un clavier avec un PIC

    Je ne comprends d'ailleurs pas ce que viens faire l'I2C ici, car le signal de donnée du clavier MF2 ressemble plutôt à une transmission asynchrone, à la différence près que la ligne de transmission est bidirectionnelle.

  31. #30
    invite1f828489

    Re : Interfacage d'un clavier avec un PIC

    bonjour,
    merci jack pour tes renseignements,
    effectivement le bit de parité me posait un probleme,alors je ne vais pas utiliser un I2C mais je vais envoyer bit par bit sur mon µc.
    je voudrais savoir si quelqu'un sait ou je pourrais trouver des informations en ce qui concerne la configuration d'un clavier ,car je viens de trouver la table des scancodes set 3 pour mon clavier mais je ne sais pas quelles sont les commandes (en octet) que je dois utiliser pour configurer mon clavier comme pour gérer les 3 led d'un clavier,le reset,ect... bref la configuration initiale du clavier. je précise que mon protocole du claveir est MF2.
    merci
    cordialement
    tiaco

Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. [Divers] Pb avec le clavier d'un PC portable
    Par invitef2517d46 dans le forum Dépannage
    Réponses: 0
    Dernier message: 15/12/2007, 20h31
  2. Fonctionnement d'un PIC avec plusieurs servo
    Par invite5d1bc976 dans le forum Électronique
    Réponses: 4
    Dernier message: 09/12/2007, 14h37
  3. clavier et pic
    Par sdow dans le forum Électronique
    Réponses: 4
    Dernier message: 10/03/2007, 11h41
  4. Gestion d'un afficheur avec un PIC
    Par invitee1ad6ffc dans le forum Électronique
    Réponses: 3
    Dernier message: 08/12/2005, 21h28
  5. clavier PS2 et Pic
    Par invite958adb57 dans le forum Électronique
    Réponses: 1
    Dernier message: 05/11/2003, 23h13
Découvrez nos comparatifs produits sur l'informatique et les technologies.