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

Timer PIC en mode compteur



  1. #1
    Axel_bis

    Timer PIC en mode compteur

    Bonjour a vous tous,

    J aurais une petite question sur la mise en oeuvre d un compteur avec un PIC 16F873 en language C.

    Je me suis documenté et comme beaucoup de monde j ai lu la doc de bigonoff, mais le probleme c qu il n y a pas d explication pour le C.

    Ma question est tres simple, c comment parametrer le timer du PIC pour qu il puisse compter ou decompter, dans mon cas ce serait plus pour decompter.
    J ai vu qu il fallait parametrer le registre OPTION_REG en mode compteur, je l ai fait et en mode simulation avec MPLAB y a pas de probleme ca fonction mais en pratique ca ne fonctionne plus.

    Je vous donne le code que j ai réalisé:
    OPTION_REG = 0b00000000; //prediviseur petit pour test

    int Time (void)
    {
    int i;
    int Cpt_Heure=0;
    do
    {
    for(i=0; i<1; i++)
    {
    do
    {
    TMR0++;
    }while(TMR0<5);
    TMR0=0;
    Affichage(); //affiche Heure
    }
    Heure=Heure+1;
    }while(Heure<23);
    return Heure;
    }

    Donc comme je vous le disais juste avant ce code la marche en simulation sous MPLAB mais pas en pratique.
    Je suppose que ca doit venir du parametrage du registre OPTION_REG.

    Si il y avait quelqu un qui pourrait m aider ce serais vraiment sympa.


    Merci d avance.

    -----


  2. Publicité
  3. #2
    Gérard

    Re : Timer PIC en mode compteur

    Si tu veux utiliser le Timer0 en compteur, il ne faut pas l'incrémenter mais le laisser COMPTER.
    Avec le registre option à 0, tu configures l'entrée de comptage de manière à ce que ce soit la fréquence du quartz / 4 qui soit prise en compte.
    Bit 5 de option_reg

    Pour compter plus d'évènements, prend le Timer1 qui compte sur 16 bits.
    Ne pas oublier de configurer les bits gérant les interruptions.
    Gérard.

  4. #3
    Axel_bis

    Re : Timer PIC en mode compteur

    Donc si je comprends bien il ne faut pas que je boucle le TMR0 mais que je laisse s incrementer tout seul.

    Pour ce qui est de son utilisation c est qu il faut que je gère une horloge en temps réel donc j ai besoin d un quartz (20 MHz, pas eu le choix). L interruption je la fait quant il y a débordement du timer ?

    Merci Gérard pour l info.
    Dernière modification par Axel_bis ; 01/06/2006 à 07h38.

  5. #4
    lotusya

    Re : Timer PIC en mode compteur

    bonsoir à tous,
    j'ai un gros problème. Je dois utiliser le TMR0 du pic 16F84 en mode compteur pour lire la vitesse d'un moteur et la contrainte est de déterminer le nombre d'impulsions que le TMR0 a compté à partir du signal qu'il a reçu sur la broche RA4 du pic. Comment je fais dans ce cas?

  6. #5
    Gérard

    Re : Timer PIC en mode compteur

    Citation Envoyé par lotusya Voir le message
    bonsoir à tous,
    j'ai un gros problème. Je dois utiliser le TMR0 du pic 16F84 en mode compteur pour lire la vitesse d'un moteur et la contrainte est de déterminer le nombre d'impulsions que le TMR0 a compté à partir du signal qu'il a reçu sur la broche RA4 du pic. Comment je fais dans ce cas?
    Le 16F84 est décrit de manière très précise dans les cours de Bigonoff.
    http://www.abcelectronique.com/bigonoff/

  7. A voir en vidéo sur Futura

Sur le même thème :

Discussions similaires

  1. programmateur (timer)avec pic 16F628
    Par alainav1 dans le forum Électronique
    Réponses: 13
    Dernier message: 01/11/2008, 14h27
  2. timer à base de pic
    Par spirou38 dans le forum Électronique
    Réponses: 1
    Dernier message: 31/07/2007, 21h31
  3. timer dans un pic
    Par traxxa dans le forum Électronique
    Réponses: 2
    Dernier message: 21/03/2007, 20h00
  4. Pic : Petit Souci Avec Un Timer
    Par MEMOR dans le forum Électronique
    Réponses: 0
    Dernier message: 16/05/2006, 18h57
  5. timer/compteur programmable
    Par noisy_man dans le forum Électronique
    Réponses: 3
    Dernier message: 08/10/2005, 12h56