[PIC] - Gestion registre à décalage TPIC6B596N
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

[PIC] - Gestion registre à décalage TPIC6B596N



  1. #1
    jorg1n

    [PIC] - Gestion registre à décalage TPIC6B596N


    ------

    Bonjour,

    voila, dans mon nouveau projet, je dois utiliser un TPIC6B596N, qui est un registre a décalage de 8bits, mais je ne vois pas comment gérer ce module a l'aide d'un PIC...
    http://focus.ti.com/lit/ds/symlink/tpic6b596.pdf

    Je vais continuer mes recherches, mais un petit coup de pouce serait le bienvenue...

    Bonne après midi à tous.

    -----

  2. #2
    ftorama

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    Avec la table de vérité, c'est toujours faisable, mais tes composants m'ont l'air bien complexes, notamment à cause de ce double-buffering.

    Perso, j'utilise ceux-là qui sont bien plus simples:
    http://www.micrel.com/_PDF/mic5891.pdf
    Quand un homme a faim, mieux vaut lui aprendre à pecher que de lui donner un poisson.

  3. #3
    jorg1n

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    Merci ftorama,

    malheureusement, je n'ai pas le choix du composant, moi aussi je serai parti sur une autre référence...

    Et j'ai beau lire la doc, je ne vois pas trop comment faire...

  4. #4
    ftorama

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    la présentation a de quoi embrouiller, mais en gros, les deux composants fonctionnent pareil.

    Ce qu'il faut bien comprendre, c'est qu'il y a trois "fonctions" distinctes dans un tel composant:
    - le transfert en série des données
    - le chargement des données dans un registre de sortie
    - l'activation des sorties. Le contenu du registre de sortie se retrouve alors sur les sorties.

    Donc, dans un premier temps, tu charges ton registre en pilotant les signaux SRCK et SER IN.

    Une fois les données chargées, une impulsion sur RCK va remplir le registre de sortie. Enfin l'activation de /G va driver les sorties.

    Je n'en dirai pas plus pour trois raisons:
    - je ne connais pas ton système, et il a sans doute des spécificités que j'ignore
    - j'en ai déja dit beaucoup
    - c'est pour ton bien de te laisser chercher un peu....le plus gros est fait
    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
    jorg1n

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    Je te remercie,

    je vais essayé d'avancer... et je vous tiens au courant.


    PS: Si quelqu'un a déjà un petit driver tout prêt dans ses cartons, je suis preneur...

    Merci d'avance

  7. #6
    jorg1n

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    bon, après avoir bien regardé la documentation, j'en ai déduis cela:
    Code:
    void write_TPIC_byte(unsigned char data_byte, unsigned char number_of_bits) 
    {
       unsigned char i = 0;
    
       DELAY_10US(1);
       for(i=0; i<number_of_bits; ++i) 
    		{
            SRCK = 0;                // Mise à 0 du signal d'horloge
            if((data_byte & 1)==0)
               SERIN = 0;                // Mise à 0 du signal de donnée
            else
               SERIN = 1;                // Mise à 1 du signal de donnée
            data_byte=data_byte>>1;
            DELAY_10US(1);
            SRCK = 1;                // Mise à 1 du signal d'horloge
            DELAY_10US(1);
       }
    }
    Tout en sachant que la fréquence max pour SRCK est de 10 MHz, pour le moment je l'ai fixé a 50 KHz, mais j'optimiserai ensuite.

    Mais je ne vois pas trop quoi faire du signal RCK!!

    Qu'en pensez vous?

    Merci d'avance

  8. #7
    ftorama

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    Pense à mettre le /SRCLR à 1, sinon tes bascules ne vont rien basculer

    RCK, je te l'ai expliqué au-dessus, tu lui envoies une impulsion après avoir chargé les données, donc après ta boucle for dans ton programme.

    Code:
    void write_TPIC_byte(unsigned char data_byte, unsigned char number_of_bits) 
    {
       unsigned char i = 0;
    SRCLR=0;
    RCK=0;
    DELAY_10US(1);
    SRCLR=1;
       for(i=0; i<number_of_bits; ++i) 
    		{
            SRCK = 0;                // Mise à 0 du signal d'horloge
            if((data_byte & 1)==0)
               SERIN = 0;                // Mise à 0 du signal de donnée
            else
               SERIN = 1;                // Mise à 1 du signal de donnée
            data_byte=data_byte>>1;
            DELAY_10US(1);
            SRCK = 1;                // Mise à 1 du signal d'horloge
            DELAY_10US(1);
       }
    G=1;
    RCK=1;
    G=0;
    RCK=0;
    }
    Par prudence, je pilote /G dans cet exemple, mais si tes sorties peuvent rester activées, autant le laisser à 0. Le SRCLR peut également être shunté si des états incertains sur les sorties importent peu
    Quand un homme a faim, mieux vaut lui aprendre à pecher que de lui donner un poisson.

  9. #8
    jorg1n

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    Merci ftorama,

    en ce qui concerne /G, il est toujours au potentiel 0V, et /SRCLR lui est toujours au potentiel 5V.
    Pour RCK, j'ai bien pigé le truc... y a plus qu'a essayer... et voir a la baisse les delays.

    Merci encore pour ton aide....

  10. #9
    jorg1n

    Re : [PIC] - Gestion registre à décalage TPIC6B596N

    Bonjour à tous,

    voila, je me suis trompé dans le type de composant, il s'agit de sortie à collecteur ouvert, et malheureusement, mon CI est tiré, y aurait t'il des composant similaires mais avec des sorties 5V?

    Je continue mais recherche sur Farnell, et je vous tiens au courant

    Merci d'avance

Discussions similaires

  1. registre de décalage
    Par invite55fae67a dans le forum Physique
    Réponses: 3
    Dernier message: 20/12/2010, 21h37
  2. Registre à décalage
    Par invite2ceddf9e dans le forum Électronique
    Réponses: 14
    Dernier message: 09/04/2010, 07h15
  3. PIC 16f84A et registre à décalage 74hc164
    Par tête de brique dans le forum Électronique
    Réponses: 6
    Dernier message: 08/04/2010, 15h54
  4. Registre à décalage
    Par invite1a530f8d dans le forum Électronique
    Réponses: 6
    Dernier message: 26/06/2009, 10h50
  5. registre à décalage
    Par invite74efa975 dans le forum Électronique
    Réponses: 3
    Dernier message: 30/05/2009, 17h54
Découvrez nos comparatifs produits sur l'informatique et les technologies.