matrice à led commander par arduino
Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 44

matrice à led commander par arduino



  1. #1
    senortiti

    matrice à led commander par arduino


    ------

    Bonjour,

    Est-il possible d'avoir de l'aide sur mon projet. Je veux realiser une matrice a led (4 colonnes de 8 leds).
    Je veux controler chaque colonne sous forme de chenillard mais les 4 colonnes sont indépendantes des autres.
    Comment puis je m'y prendre avec un arduino UNO ?

    EN vous remerciant

    Adrien

    -----

  2. #2
    biloux911

    Re : matrice à led commander par arduino

    Bonjour,

    On ne voit pas vraiment ce qui te pose problème ici.

    Tu câbles tes 8 lignes (anode ou cathode au choix) sur un port chacune et tes 4 colonnes (anode ou cathode: l'inverse de ton choix précèdent) sur un port chacune, après tu actives les bonnes combinaisons au bon moment. (Attention au courant, si tu veux tout allumer sans multiplexage avec des leds qui pompent un peu, ça va être juste : il va falloir utiliser des transistors) N’hésites pas à utiliser la fonction recherche du forum sur les mots soulignés tu trouveras des schémas.

    Edit: je viens de voir le problème ^^ Il te faut obligatoirement utiliser le multiplexage.
    Dernière modification par biloux911 ; 04/03/2013 à 13h23.

  3. #3
    senortiti

    Re : matrice à led commander par arduino

    Bonjour biloux911 merci pour ta réponse. Effectivement je comptais utiliser le multiplexage pour limiter mon nombre de sortie car je suis assez limite en nombre de sortie dans mon projet. Ma question était de savoir si j'allais pouvoir gérer mes lignes de leds indépendamment mais en utilisant le multiplexage ce sera mon arduino qui saura géré les colonnes si je me trompe pas?

  4. #4
    ftorama

    Re : matrice à led commander par arduino

    Bien sur, c'est la raison d'être du multiplexage. Tu charges les données d'une ligne, tu alimentes celle-ci, tu l'éteins, tu charges les données de la suivante et ainsi de suite.

    Selon ton besoin, tu pourras driver les lignes en direct ou passer par un buffer.

    Pour mon explication, j'ai pris le commun sur les colonnes mais l'inverse est évidemment possible. Le choix se fait selon les cas mais ne change rien au principe.
    Quand un homme a faim, mieux vaut lui aprendre à pecher que de lui donner un poisson.

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

    Re : matrice à led commander par arduino

    merci a toi aussi ftorama pour ta réponse. Ma question est plutot de savoir s'il est possible d'utiliser qu'un seul multiplexeur pour gérer mes colonnes indépendamment ou si je dois utiliser un multiplexeur pour mes colonnes et un autre mes lignes. Je serai favorable pour utiliser qu un seul multiplexeur ce qui me réduirait favorablement mon nombre de sortie sur mn arduino alors que deux multiplexeurs seraient plus encombrant . Mais jai cru lire sur le forum que si j'utilise un seul multiplexeur pour ma matrice je ne pourrai pas gérer les leds indépendamment , est ce vrai?

  7. #6
    biloux911

    Re : matrice à led commander par arduino

    Je crois que tu n'as pas bien compris le principe du multiplexage ;( Regarde ici : http://www.sonelec-musique.com/elect...tiplexage.html

  8. #7
    senortiti

    Re : matrice à led commander par arduino

    bonjour, encore merci pour ton aide, mais si j'ai bien compris en faite il me faut un seul multiplexeur pour gerer ma matrice a led et je devrais jouer sur le programme pour que l'on ne voit pas que je ne gére en faite qu une led alors qu a l'oeil nu on verra plusieurs leds a la fois c est bien ca?

  9. #8
    biloux911

    Re : matrice à led commander par arduino

    Je ne sais pas ce que tu appelles un multiplexer. Pour faire ce que tu veux il te faut tes leds (+resistances) ton arduino et c'est tout. une seule colonne sera allumée à la fois mais comme ça va très vite, on croira qu'elles sont pilotées séparément. Tu nous feras une tite vidéo sur yootoob quand ça fonctionnera ?

  10. #9
    senortiti

    Re : matrice à led commander par arduino

    j'ai lu que le but de mettre un multiplexeur est de réduire le nombre de fils donc j économise des sorties sur mon arduino pour le reste de mon projet, puis cela aide à l imiter le courant car mon arduino ne devrait pas trop aimer malgré les résistances. Qu en pense tu?

  11. #10
    biloux911

    Re : matrice à led commander par arduino

    Pour faire ce que tu veux il te faut tes leds (+resistances) ton arduino et c'est tout.
    Et utiliser le multiplexage :
    une seule colonne sera allumée à la fois mais comme ça va très vite, on croira qu'elles sont pilotées séparément.

  12. #11
    senortiti

    Re : matrice à led commander par arduino

    meme si je veux que sur ma 1ere colonne la troisieme et cinquieme leds soient allumés en meme temps que sur la 3eme colonne où les leds 1 et 3 seront allumés?
    Pour tout t'expliquer je dois realiser le jeu GUITAR HERO , donc les touches à appuyer défileront sur la matrice a led ce qui permet au joueur d anticiper les touches qu'il devra appuyer sur sa guitare

  13. #12
    biloux911

    Re : matrice à led commander par arduino

    Oui (reli un coup la théorie du multiplexage et lance toi maintenant ! ^^)

  14. #13
    senortiti

    Re : matrice à led commander par arduino

    okok je vais me lancer alors avec mon multiplexeur, mes leds et mon arduino
    Et je n'oublierai pas la video

    merci beaucoup

    a bientot

  15. #14
    senortiti

    Re : matrice à led commander par arduino

    Bonjour, excuse moi je reviens à la charge mais je crois que la matrice n 'est finalement pas une bonne chose pour gérer le chenillard d'une colonne indépendamment des autres! Aurais tu un conseil stp?

  16. #15
    biloux911

    Re : matrice à led commander par arduino

    Bonjour, tu attends un miracle de la part du forum là... Avance, explique où tu bloques et tu obtiendras de l'aide mais franchement depuis ton premier post, sur quoi tu as travaillé ?

  17. #16
    senortiti

    Re : matrice à led commander par arduino

    j'attends pas un miracle mais un coup de pouce. j'ai bossé sur le programme et j'ai réalisé en miniature la matrice 3x3 au lieu de 8x4. Seulement je ne peux pas beaucoup avancer puisque le matériel est à ma fac donc un fois par semaine j'ai accès aux matériels. Du coup sans démultiplexeur pour tester une séquence du chenillard sur chaque colonne séparément on n'y est pas arrivé , mon collègue est super bon en informatique mais là ça bloque on a réfléchie et cherché mais avec démultiplexeur ca semble pas possible

  18. #17
    freepicbasic

    Re : matrice à led commander par arduino

    tu met 1 uln2003 sur le bus des 8 leds
    et un 2N2907 sur chaque ligne
    Après il suffit de commander un par un les 2N2907 et d'envoyer a chaque fois les bits sur les 8 leds
    A+, pat

  19. #18
    senortiti

    Re : matrice à led commander par arduino

    merci freepicbasic pour ta solution, mais j'ai une contrainte qui est de devoir réduire au maximum mon nombre de sortie or ta solution est trop encombrante de plus j'ai 4colonnes de 8 leds a piloter

  20. #19
    biloux911

    Re : matrice à led commander par arduino

    Tu continus de parler de multiplexer/démultiplexer alors que je t'ai dit et répété qu'il te fallait ton arduino (12 pin utilisées) et tes leds point barre. Si t'as lu et compris le lien que je t'ai donné sur le multiplexage, et un collègue qui taquine en programmation, la vidéo qu'on attend ne devrait plus tarder ^^

  21. #20
    freepicbasic

    Re : matrice à led commander par arduino

    Laisse tomber, les crises d'ado on ne peut pas les soigner sur futura ....
    A+, pat

  22. #21
    senortiti

    Re : matrice à led commander par arduino

    heu vous vous emballez les gars, n'oubliez pas que vous avez été novice avant moi alors faites preuve un peu de tolérance svp! je sais ce que tu m'as dit pour les mux mais le problème c'est que je suis vraiment limité et 12 sorties c'est vraiment trop d'ou la possible utilisation de mux ou demux! j'ai un collègue qui m'a parlé d'utilisé un décodeur mais je vois pas trop pourquoi, j'attends donc ses explications.

  23. #22
    freepicbasic

    Re : matrice à led commander par arduino

    Alors au lieu de donner les infos au compte goutte tu devrais donner la listes des contraintes.
    Et les composants que tu peux utiliser.
    Un ou deux registres a décalage ça te va ou pas ?
    A+, pat

  24. #23
    senortiti

    Re : matrice à led commander par arduino

    alors je réalise le jeu GUITAR HERO , seulement au lieu d'avoir un écran de télé je réalise les touches a appuyer via la matrice a led, les touches à appuyer défileront vers le bas pour que le joueur puisse anticipé qu'il va devoir appuyer sur le bon bouton. la guitare sera constitué de 5 boutons, 4 bouton pour la selection d'une des 4 LED et 1bouton qui devra etre appuyé pour que les boutons de selection aient une action sinon ils n'auront aucune fonction.
    je compte utiliser un afficheur LCD pour indiquer le score et quelque information comme vous étes au niveau 1 ou 2 ou 3, Gagné Perdu ,...

    pourquoi me parle tu de registre de décalage?

  25. #24
    senortiti

    Re : matrice à led commander par arduino

    ah j'ai oublié que le son sera stocké sur un SOMO 14D relié sur le arduino

    SOMO 14D: 4broches
    Matrice 12 Broches si je ne multiplexe rien
    5vBoutons: 5 sorties
    afficheur LCD: 7 broches

    sachant que mon arduino uno possede 20 sorties!

  26. #25
    freepicbasic

    Re : matrice à led commander par arduino

    Avec un registre a décalage tu utilse 2 ou 3 pins .
    Clock, data et reset (facultatif) ou un enable qui allume les Leds

    Si tu en met 2 en série tu pilote 16 sorties
    En envoyant les données en série on clock a chaque bit , les bits se décalent , si on a 8 bits ça fait 8 coups d'horloge.
    Avec une routine ça prend quelque micro secondes
    Le reset permet de remettre tou à zéro avant de charger.
    Le mieux est de couper l'alimentation des LEDs pendant le chargement , mais ça va tellement vite que l'on voit pas beaucoup de perturbations.
    En mettant les 8 premiers bits sur le bus led et 4 ou autre sur les commandes de lignes de leds.
    A+, pat

  27. #26
    freepicbasic

    Re : matrice à led commander par arduino

    schéma ci joint

    Je n'ai mis que 2 leds par ligne et seulement 2 lignes
    Le contrôle de ligne se trouve sur le second 4015 donc le 3 iem bloc en partant du haut
    Chaque 4015 a 2 bloc de 4 bits.
    Images attachées Images attachées  
    A+, pat

  28. #27
    senortiti

    Re : matrice à led commander par arduino

    Bonjour , merci pour ta solution mais j'ai beau réfléchir je ne comprends pas le fonctionnement. est ce que cela permet de gérer une chenillard sur chaque colonne de ma matrice indépendamment de l'autre ligne. je te donne un lien pour que tu vois exactement comment j'aimerai controler mes séquences de jeu , il te faudra juste jouer 10 secondes a ce jeu pour comprendre ce que je veux obtenir

    http://www.natom.ca/jeux-gratuit/guitar-hero-2.html

    merci beaucoup en tout cas

  29. #28
    freepicbasic

    Re : matrice à led commander par arduino

    Le système permet un affichage dynamique multiplexé.
    On affiche 8 leds puis 8 autres , etc ...
    Sur le montage on peut aller jusqu'a 8 colonnes.
    Sachant que le temps d'affichage de chaque colonne sera divisé par le nombre de colonne
    On affiche l"une après l'autre les colonnes entre chaque affichage une tempo .
    Si le temps est de 10ms l'oeil n'a pas le temps de faire la différence entre allumé ou éteind et tout parait allumé en même temps.

    Le registre à décalage
    A chaque coup d'horloge les bits glissent d'un pas
    exemple;
    (d entrée 7-0 bits)
    D 7 8 6 5 4 3 2 1 0
    1 0 0 0 0 0 0 0 0 0 ; au départ un coup de Reset à Tout éffacé
    0 1 0 0 0 0 0 0 0 0 ; 1 er coup d'horloge la donnée présente sur d se retrouve sur 7
    0 0 1 0 0 0 0 0 0 0 ; 2 iem coup d=0 donc 7=0 tous les autres bits sont décalés vers la droite
    0 0 0 1 0 0 0 0 0 0 ; idem
    0 0 0 0 1 0 0 0 0 0 ; idem
    0 0 0 0 0 1 0 0 0 0 ; idem
    0 0 0 0 0 0 1 0 0 0 ; idem
    0 0 0 0 0 0 0 1 0 0 ; idem
    0 0 0 0 0 0 0 0 1 0 ; idem
    0 0 0 0 0 0 0 0 0 1 ; idem

    Si un second registre est cascadé le bit passera sur le 7 du second registre et le premier sera Tout à zéro

    On peut ainsi chargé une série de bits très vite à la vitesse max du µp

    Sur le second registre on a connecté l'affichage des colonnes
    ainsi
    10000000 sélectionne la colonne 1
    01000000 sélectionne la colonne 2
    001000000 sélectionne la colonne 3
    etc ... jusqu'a 8, et si on veut, rien empêche d'en mettre moins, 3 par exemple.

    Donc si l'on veut afficher sur la 1 iere colonne 2 leds, on met par exemple;
    11000000 100000000 ; affiche 2 leds sur col 1
    tempo 10ms
    puis
    00110000 010000000 ; affiche 2 leds sur col 2
    tempo 10ms
    etc...
    On affiche donc un tableau complet de 8 x 8 leds simultanément visuellement, en réalité par tranche de 8 mais très vite donc invisible.
    Code:
    Ce qui donne comme tableau affiché sur 4 colonnes (O allumé), (- éteind);
    
    O - - - 
    O - - -
    - O - -
    - O - -
    - - - -
    - - - -
    - - - -
    - - - -

    Exemple de code pour piloter l'afficheur à registre à décalage

    Code:
    main
    ; ==== Init Clear all ===
      bsf PORTB,2 ; Reset
      bcf PORTB,2 ;  Eteind  tout !
    
    ; ==== colonne 1 ===
      movlw 0x80  ; selection de la colonne 1  0x80=B100000000
      movwf octet
      call Send Octet ; envoie
    
      movlw 0xC0  ; valeur à afficher
      movwf octet
      call Send Octet
      call delay10Ms ; à faire
    
    ; ==== colonne 2 ===
      movlw 0x40  ; selection de la colonne 2  0x40=B010000000
      movwf octet
      call Send Octet ; envoie
    
      movlw 0x30  ; valeur à afficher
      movwf octet
      call Send Octet
      call delay10Ms ; à faire
    ;
    ; etc ... 
    ;  8 colonnes
    
    ; on pourait faire une procédure en boucle avec la colonne en paramètres et l'octet en tableau 
    ; plutôt que de répéter 8 fois la même chose
    
    goto main
    
    
    ; envoie 8 bits sur les registres
    SendOctet
      Movlw 8
      movwf Count
    
    SendOctet1
       ; tester le bit 0 de Octet
       btfss OCTET,0 ; test bit=0
         bcf PORTB,0 ; oui le mettre sur D
       btfsc OCTET,0 ; test bit = 1
         bsf PORTB,0 ; oui le mettre sur D
    ;
       bsf PORTB,1   ; monte le clock
       bcf PORTB,1   ; descend le clock
    ;
       rrf Octet,f   ; decal l octet vers la droite pour tester le bit sur bit0
    ;
       decfsz Count,f ; 8 fois ?
       goto SenOctet1 ; non alors boucler
     return ; oui terminé
    ; avec un quartz à 4MHZ
    ; chaque bits prendra environ 10µs à être transmis
    ; soit 160µs pour une colonne complète
    ; si la tempo est de 10ms on a 1/62.5ièm de temps (1/0.16) volé par le chargement des registres, négligeable ...
    Dernière modification par freepicbasic ; 17/03/2013 à 08h46.
    A+, pat

  30. #29
    freepicbasic

    Re : matrice à led commander par arduino

    sur le schéma R1 et R4 limite le courant de la led
    pour chuter 3V avec 20ma on a 150 ohms et pas 10k (valeur par défaut de ISIS que je n'ai pas corrigé)
    A+, pat

  31. #30
    senortiti

    Re : matrice à led commander par arduino

    Bonjour , merci pour tes explications, seulement est ce que ton exemple est le véritable fonctionnement du registre a décalage ou est ce que cela se produit avec une programmation pour ce cas la? parce que ce fonctionnement ne convient pas à mon projet car il faudrait que n'importe qu'elle combinaison que je rentre en 1ère ligne se décale sur la deuxieme ligne puis 3ème ,...

    dans mon cas:

    (C pour colonne)
    C1 C2 C3 C4
    L1 1 0 1 0 une fois cette ligne allumé elle se remet a zéro et s'allume en deuxieme ligne
    L2 1 0 1 0 une fois cette ligne allumé elle se remet a zéro et s'allume en 3eme ligne
    L3 1 0 1 0 ect
    L4 1 0 1 0
    L5 1 0 1 0
    L6 1 0 1 0
    L7 1 0 1 0
    L8 1 0 1 0

Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. Matrice à led + arduino
    Par invitefd30d555 dans le forum Électronique
    Réponses: 54
    Dernier message: 29/07/2013, 01h13
  2. Réponses: 11
    Dernier message: 19/12/2012, 14h26
  3. commander une LED par ethernet
    Par invitef17954b9 dans le forum Électronique
    Réponses: 14
    Dernier message: 25/12/2009, 18h57
  4. Commander un éclairage led par télécommande
    Par fraelec74 dans le forum Électronique
    Réponses: 2
    Dernier message: 24/10/2009, 09h15
  5. commander un eclairage led par telecommande
    Par fraelec74 dans le forum Électronique
    Réponses: 3
    Dernier message: 23/10/2009, 12h43
Découvrez nos comparatifs produits sur l'informatique et les technologies.