Timer
C'est un compteur 8 bits accessible par le registre TMR0 (01h)
Fonctionnant en R/W
Il peut être utilisé avec un prescaler 8 bits programmable
Avec une source horloge interne et externe (Timer mode) (Counter mode)
Déclenchement sur front montant ou descendant en source externe
Il peut provoquer des interruptions par dépassement de FFh à 00h, cela positionne le bit 2 T0IF du registre INTCON (h'0B')
Le Timer ne fonctionne pas en période SLEEP
Dans ce mode, le compteur incrémente à chaque cycle d'instruction (sans prescaler)
Ce mode est sélectionné en mettant le bit 5 (T0CS) du registre OPTION_REG (81h) à 0
On peut le positionner à une valeur choisie en écrivant dans le registre TMR0 (01h)
Si on écrit dans le registre TMR0, l'incrément est bloqué pendant les deux cycles qui suivent, il faut en tenir compte dans la valeur à écrire.
Dans ce mode, le compteur incrémente à chaque impulsion appliquée sur RA4/T0CKI
Ce mode est sélectionné en mettant le bit 5 (T0CS) du registre OPTION_REG à 1
Il incrémente sur le front montant ou descendant selon le bit 4 (T0SE) du registre OPTION_REG
Avec un signal symétrique, la fréquence du signal appliqué sur RA4/T0CKI doit être inférieure à 50 MHz et à 1/4 de la fréquence horloge, multiplié éventuellement par le taux de division du prescaler.
C'est un compteur 8 bits programmable
Il n'est ni lisible ni inscriptible
Seul son taux de division est programmable par les bits 0 1 et 2 (PS0) (PS1) et (PS2) du registre OPTION_REG (81h)
Le taux de division peut être modifié en cours de programme
Il est utilisé devant le module Timer lorsque le bit 3 PSA du registre OPTION_REG (81h) est à 0
Les instructions qui écrivent dans le registre TMR0 (01h) le remettent à zéro
Taux de division du Prescaler avec le module Timer (PSA=0) | |||
PS2 | PS1 | PS0 | Division |
0 | 0 | 0 | 2 |
0 | 0 | 1 | 4 |
0 | 1 | 0 | 8 |
0 | 1 | 1 | 16 |
1 | 0 | 0 | 32 |
1 | 0 | 1 | 64 |
1 | 1 | 0 | 128 |
1 | 1 | 1 | 256 |
Le prescaler fonctionne pour le module TIMER ou pour le WATCHDOG, mais pas pour les deux simultanément
Retour au sommaire
© 1999-2009 A. Ducros F5AD