Concatenation de variable pic 16F628
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Concatenation de variable pic 16F628



  1. #1
    inviteaa634380

    Concatenation de variable pic 16F628


    ------

    Bonsoir a tous,

    Je voudrais savoir si il est possible de concatener 2 (ou+) variables dans un programme de pic en asm

    Si oui, quelle est la méthode.

    Merci d'avance

    -----

  2. #2
    RISC

    Re : Concatenation de variable pic 16F628

    Bonsoir,

    Peux-tu expliquer plus clairement ce que tu veux faire ?
    Je ne vois aucun probleme spécifique pour faire ce que tu decris mais tu as peut-etre un besoin precis ?

  3. #3
    invite03481543

    Re : Concatenation de variable pic 16F628

    Pour concaténer il faut faire ce qu'on appelle un décalage à droite ou a gauche selon.

    Ex: Récupérer un résultat d'une conversion A/D:

    Le résultat est sur 10 bits (8+2)
    Le résultat est contenu dans ADSL et ADSH, il faut concaténer pour obtenir le résultat complet.

  4. #4
    RISC

    Re : Concatenation de variable pic 16F628

    OK,
    Ton micro est un 8 bits. Si tu veux faire des calculs sur plus de 8 bits il faudra manipuler des grandeurs de 16bits.
    Une alternative est de ne garder que les 8 bits de poids fort de ta conversion. En admettant que le resultat de la conversion etait aligne a droite :
    1/ tu decale a droite ADSH dans la CARRY :
    RRF ADSH // ADSH contient ADSH shifte a droite
    2/ puis tu decale a droite la CARRY dans ADSL :
    RRF ADSL,W // WREG contient ADSL shifte a droite avec la carry dans le bit 7
    3/ tu decale a droite ADSH une 2e fois dans la CARRY :
    RRF ADSH //
    4/ puis tu decale a droite la CARRY dans WREG :
    RRF WREG,W // WREG (W) contient maintenant les 8 bits de poids fort de la conversion.

    Le resultat est maintenant dans WREG (8 bits de poids fort de ta conversion 10 bits).
    Cela resoud-il ta demande ?
    Dernière modification par RISC ; 09/12/2006 à 20h47.

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

    Re : Concatenation de variable pic 16F628

    Bonsoir,
    comme on me la demandé, je vais essayer de préciser.
    comme je début dans la programation des pics, je n'utilise peu etre pas la bonne methode.
    Je récupère une trame sur com rs232 à l'aide de 8 variables de 1 bit, par une méthode qui consite a vérifier si la variable est vide si oui j'ecris dedans sinon je verifie la suivante et ainsi de suite. Par la suite je voudrais prendre ces 8 variables et reconstituer la trame dans une seul variable.
    J'espere avoir été un peu plus clair.
    Si vous pouvez me donner des exemples en asm, c'est plus parlant pour moi

    Merci d'avance

  7. #6
    RISC

    Re : Concatenation de variable pic 16F628

    Salut,

    Ci-joint un petit projet fait exprès pour toi ;=)
    Ne pouvant attacher un xxxx.ZIP du projet, je te mets les PDF (envoie moi un MP si tu veux le ZIP)

    Il concatène 8 octects en 1 seul.
    Hypothèses :
    * le bit significatif "RS232" se trouve en position 0 dans chaque octet
    * l'adresse 0x70 contient le bit de poids le + fort de l'octet concatene
    * l'adresse 0x77 contient le bit de poids le + faible de l'octet concatene

    J'ai testé tout cela sous MPLAB v7.50 IDE : Microchip MPASM toolsuite + le simulateur integré.

    T'as plus qu'a customiser pour ton besoin.

    L'astuce est d'utiliser les seuls registres speciaux FSR / INDF qui permettent de faire de l'indirection...

    Le manuel de programmation des PIC16F est ici :
    http://ww1.microchip.com/downloads/e...Doc/31029a.pdf

    Le manuel complet de l'architecture ici :
    http://ww1.microchip.com/downloads/e...Doc/33023a.pdf

    Bon courage
    Fichiers attachés Fichiers attachés

  8. #7
    inviteaa634380

    Re : Concatenation de variable pic 16F628

    Merci a tous de vos réponse, je fais le test avec le projet de Risc.

    A la prochaine

Discussions similaires

  1. Programmation pic 16f628
    Par invite0b8beced dans le forum Électronique
    Réponses: 7
    Dernier message: 03/08/2008, 06h37
  2. Pic 16f628
    Par invite4164fd5c dans le forum Électronique
    Réponses: 9
    Dernier message: 16/12/2006, 16h15
  3. pic 16F628
    Par LTHOMAS dans le forum Électronique
    Réponses: 7
    Dernier message: 29/03/2006, 21h13
  4. pic 16F628
    Par invitea78e17c9 dans le forum Électronique
    Réponses: 1
    Dernier message: 15/03/2004, 21h04
  5. pic 16f628
    Par invite7a98af17 dans le forum Électronique
    Réponses: 3
    Dernier message: 16/02/2004, 15h21
Découvrez nos comparatifs produits sur l'informatique et les technologies.