Répondre à la discussion
Affichage des résultats 1 à 11 sur 11

mesurer une largeur d'impulsion 16f84



  1. #1
    solaris13

    mesurer une largeur d'impulsion 16f84


    ------

    bonjour j'essai actuellement de faire un programme de calcul de largeur d'impulsion avec un 16f84 ce qui n'est pas si facile que ca.
    Pour configurer mon interruption sur RB0 lorsqu'il y a changement d'etat je fais:

    movlw B'10010000'
    movwf INTCON

    ensuite je valide l'interruption sur changement d'etat 0->1 seulement le timer demarre.

    movlw B'01000000'
    movwf OPTION_REG

    D'autre part je ne peux pas simuler le changement d'etat avec mplab car rb0 est en entrée.
    Pourriez vous m'aider s'il vous plait merci

    -----

  2. Publicité
  3. #2
    invite_P89
    Invité

    Re : mesurer une largeur d'impulsion 16f84

    LU
    pour activer RB0
    allez dans debugger ouvrir stimulus puis asyncl
    a bientôt

  4. #3
    solaris13

    Re : mesurer une largeur d'impulsion 16f84

    merci Pom26, maintenant je cherche comment activer ou desactiver TMR0

  5. #4
    invite_P89
    Invité

    Re : mesurer une largeur d'impulsion 16f84

    Citation Envoyé par solaris13 Voir le message
    merci Pom26, maintenant je cherche comment activer ou desactiver TMR0
    tu ne peux pas le faire le TRM0 est en service en permanence par H ou H exter .utilise le TMR1 A/M par TRM1ON du registre T1CON
    a bientôt

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

    Re : mesurer une largeur d'impulsion 16f84

    le probleme c'est qu'il n'y a qu'un seul timer sur le 16f84

  8. #6
    invite_P89
    Invité

    Re : mesurer une largeur d'impulsion 16f84

    Citation Envoyé par solaris13 Voir le message
    le probleme c'est qu'il n'y a qu'un seul timer sur le 16f84
    re lu
    oui pardon je suis passé au 877,donc pour toi tu as la posibilité de faire
    CLRF TRM0 pour faire un raz
    le débordement par TOIF

    a bientot

  9. Publicité
  10. #7
    invite_P89
    Invité

    Re : mesurer une largeur d'impulsion 16f84

    il faut aussi tenir compte que chaque fois tu ecris le prescaler est RAZ
    est que le compteur bloqué pendant 2 cycles

  11. #8
    freepicbasic

    Re : mesurer une largeur d'impulsion 16f84

    TOIE pour arrêter et mettre en route!
    le TMR0
    faire un

    clrf TMR0
    puis BSF INTCON, T0IE ; Tzéro pas TO

    dans la routine de RB0


    Le pb C'est que pour mesurer l'impulsion il faut aussi changer le front de RB0 si on veux faire une int sur le front descendant.
    voir;
    OPTION_REG INTEDG
    A+, pat

  12. #9
    solaris13

    Re : mesurer une largeur d'impulsion 16f84

    oui en fait j'ai procédé à l'initialisation

    BCF STATUS, RP0 ;
    movlw B'10010000'
    movwf INTCON
    BSF STATUS ,RP0
    movlw B'01000000'
    movwf OPTION_REG ;validation int sur front montant
    wait nop
    goto wait
    ;ensuite je cree un sous prog lorsque l'it intervient et j'y inclut la detection du front descendant

    int1 movlw B'10010000'
    movwf INTCON
    movlw 0x00
    movwf OPTION_REG

    le probleme est qu'il faut maintenant calculer avec TMR0

  13. #10
    freepicbasic

    Re : mesurer une largeur d'impulsion 16f84

    la méthode dépend de la longueur de l'impulsion.
    Et des limites max et min.

    Si on veut plus de 256 pas il faudra incrémenter un compteur dans le TMR0.
    A+, pat

  14. #11
    freepicbasic

    Re : mesurer une largeur d'impulsion 16f84

    Ici un exemple dans le source pour mesurer l'impulsion de 1 à 2ms et l'afficher sous forme de bargraph;
    http://forums.futura-sciences.com/thread161898.html
    avec changement de sens du front de rb0.
    A+, pat

Discussions similaires

  1. mesurer une thermistance
    Par eldino dans le forum Électronique
    Réponses: 2
    Dernier message: 13/11/2007, 07h59
  2. Mesurer une montagne
    Par Lindaaa dans le forum Géologie et Catastrophes naturelles
    Réponses: 13
    Dernier message: 02/03/2007, 14h48
  3. Mesurer largeur tache lumineuse
    Par cipango dans le forum Électronique
    Réponses: 7
    Dernier message: 06/12/2006, 13h08
  4. mesurer une tension
    Par sebastien69 dans le forum Électronique
    Réponses: 11
    Dernier message: 06/05/2006, 19h20
  5. Réponses: 11
    Dernier message: 15/03/2006, 15h17
Découvrez nos comparatifs produits sur l'informatique et les technologies.