Vous êtes sur la page 1sur 2

TIMER 16F628A

Le module Timer0 est un compteur 8 bits, matérialisé par le registre TMR0 qui est incrémenté de 0
jusqu’à 255 puis retombe à 0. Chaque passage de 255 à 0 correspond à un débordement du registre 8
bits TMR0, ce débordement provoque le passage à 1 d'un bit drapeau TOIF. Une fois le débordement
détecté, ce bit doit être remis à 0 par programmation afin de pouvoir informer d'autres débordements.
RA4 Compteur
TMR0
horloge Timer
Figure 11 : Fonctions du périphérique Timer

Le choix entre ces deux types de fonctionnement est déterminé par le bit 5 (TOCS) du registre
OPTION_REG.

Lorsque l'on a la fonction compteur pour laquelle on pourra choisir si l’incrémentation se produit sur
un front montant ou descendant de RA4, ce choix se fait par le bit 4 (TOSE) du registre
OPTION_REG, voir figure Timer.

1.1 - Modification de la fréquence

L'affectation de ce changement d'échelle soit au chien de garde soit au timer s'effectue par
l'intermédiaire du bit 3 PSA du registre OPTION_REG.

Pour ne pas modifier la fréquence il faut associer le Prescale au chien de garde

1
TIMER 16F628A

1.2 - Le fonctionnement du timer est donné ci-dessous :

Figure 12 : Synoptique du Timer

1.3 - Logique de gestion des interruptions

Le registre INTCON regroupe l'ensemble des bits concernés :

bit INTCON <7>, GIE : Global Interrupt Enable


permet de prendre en compte les interruptions
Ce bit doit obligatoirement être mis à 1 pour pouvoir gérer les interruptions, 0 : masque les
interruptions

Interruption liée au Timer0

bit INTCON <5>, TOIE : TMR0 Overflow Interrupt Enable bit


1 : autorise la détection de l'interruption provoquée par le débordement du registre 8 bits
TMR0, lorsqu'il est passé de la valeur 0xFF à 0x00.

bit INTCON <2>, TOIF : TMR0 Overflow Interrupt Flag bit


Un débordement est apparu dans le registre TMR0

Le Timer0 est configuré à l'aide des bits du registre OPTION_REG

bit OPTION_REG <5> : TOCS


Permet de sélectionner la source du signal d'horloge
1 : fonction compteur, RA4 en entrée
0 : fonction timer, source horloge

bit OPTION_REG <0> : PSA


permet d'associer le sous échantillonnage soit au chien de garde soit au Timer0
1 : associer au chien de garde
0 : associer au Timer0

bit OPTION_REG <2:0> : PS


permet de diminuer la fréquence de l'oscillateur de 2 jusqu'à 128, pour avoir un ration de 1:1,
il faut associer le Prescale au chien de garde.

Vous aimerez peut-être aussi