LES TIMERS
Application au microcontrôleur MC9S12
 

Hugues ANGELIS

page  06

                

Détail des registres

PAFLG (Pulse Accumulator A Flag Register)                                                      (Base + 33)

Bit

7

6

5

4

3

2

1

0

Read

0

0

0

0

0

0

PAOVF

PAIF

Write

 

 

 

 

 

 

Reset

0

0

0

0

0

0

0

0

Accès :                    Toujours accessible en lecture et en écriture.
PAOVF           Pulse Accumulator A Overflow Flag Flag d'Overflow du Pulse Accumulator A.
Fonction :         Indique un débordement du Pulse Accumulator A.
                        Doit être systématiquement remis à 0 pour permettre la prise en compte d'une nouvelle activation.
Etat :                        0, débordement détecté.  1, pas de débordement détecté.
PAIF               Pulse Accumulator A Input Flag Flag d'entrée active du Pulse Accumulator A.
Fonction :          Indique la détection par l'étage d'entrée du Pulse Accumulator A, d'un état actif.
                        Doit être systématiquement remis à 0 pour permettre la prise en compte d'une nouvelle activation.
                         Si le bit TFFCA du registre TSCR est activé, la mise à zéro est réalisée automatiquement par la lecture de l'un                          des registres PACN3 ou PACN2.
Etat :                        0, état actif détecté sur le port 7.  1, pas d'état actif détecté sur le port 7.

 

PACN3 (Pulse Accumulator Register 3)                                                                (Base + 34)

Bit

7

6

5

4

3

2

1

0

Read

PACA15 /
PACN37

PACA14 /
PACN36

PACA13 /
PACN35

PACA12 /
PACN34

PACA11 /
PACN33

PACA10 /
PACN32

PACA9 /
PACN31

PACA8 /
PACN30

Write

Reset

0

0

0

0

0

0

0

0

PACN2 (Pulse Accumulator Register 2)                                                                 (base + 35)

Bit

7

6

5

4

3

2

1

0

Read

PACA7 /
PACN27

PACA6 /
PACN26

PACA5 /
PACN25

PACA4 /
PACN24

PACA3 /
PACN23

PACA2 /
PACN22

PACA1 /
PACN21

PACA0 /
PACN20

Write

Reset

0

0

0

0

0

0

0

0

PACN1 (Pulse Accumulator Register 1)                                                                (Base + 36)

Bit

7

6

5

4

3

2

1

0

Read

PACB15 /
PACN17

PACB14 /
PACN16

PACB13 /
PACN15

PACB12 /
PACN14

PACB11 /
PACN13

PACB10 /
PACN12

PACB9 /
PACN11

PACB8 /
PACN10

Write

Reset

0

0

0

0

0

0

0

0

PACN0 (Pulse Accumulator Register 0)                                                                 (base + 37)

Bit

7

6

5

4

3

2

1

0

Read

PACB7 /
PACN07

PACB6 /
PACN06

PACB5 /
PACN05

PACB4 /
PACN04

PACB3 /
PACN03

PACB2 /
PACN02

PACB1 /
PACN01

PACB0 /
PACN00

Write

Reset

0

0

0

0

0

0

0

0

Accès :                    Toujours accessible en lecture et en écriture.
PACXYZ         Pulse Accumulator XY                                   Registre des Pulse Accumulators.
Fonction :  

PACAX donne la valeur stockée dans le Pulse Accumulator de 16 bits A.
PACBX donne la valeur stockée dans le Pulse Accumulator de 16 bits B.
PACN3X donne la valeur stockée dans le Pulse Accumulator de 8 bits PACN3.
PACN2X donne la valeur stockée dans le Pulse Accumulator de 8 bits PACN2
PACN1X donne la valeur stockée dans le Pulse Accumulator de 8 bits PACN1.
PACN0X donne la valeur stockée dans le Pulse Accumulator de 8 bits PACN0.

                                Lorsque le bit PAEN du registre PACTL est actif, les registres PACN3 et PACN2 contiennent respectivement les octets de poids fort et les bits de poids faible du Pulse Accumulator de 16 bits PACA.
En mode 16 bits, les Pulse Accumulators PAC3 et PAC2 sont déconnectés de leurs entrées respectives et cascadés pour former un Pulse Accumulator de 16 bits. La retenue de PAC2 servant alors d'entrée à PAC3.
En mode 16 bits, un débordement du Pulse Accumulator PAC3 (passage de PACN3 de 255 à 0) entraîne la mise à '1' du bit PAOVF du registre PAFLG.
En mode 16 bits, l'accès en lecture, ou en écriture, aux registres PACN3 et PACN2 doit être fait par UN accès sur 16 bits.

                                Lorsque le bit PBEN du registre PBCTL est actif, les registres PACN1 et PACN0 contiennent respectivement les octets de poids fort et les bits de poids faible du registre de 16 bits PACB.
En mode 16 bits, le Pulse Accumulator PAC1 est déconnecté de son entrée et cascadé par PAC0 pour former un Pulse Accumulator de 16 bits. La retenue de PAC0 servant alors d'entrée à PAC1.
En mode 16 bits, un débordement du Pulse Accumulator PAC1 (passage de PACN1 de 255 à 0) entraîne la mise à '1' du bit PBOVF du registre PBFLG.
En mode 16 bits, l'accès en lecture, ou en écriture aux registres PACN1 et PACN0 doit être fait en UN accès sur 16 bits.


MCCTL (Modulus Down-Counter Control Register)                                          (Base + 38)

 

Bit

7

6

5

4

3

2

1

0

Read

MCZI

MODMC

RDMCL

0

0

MCEN

MCPR1

MCPR0

Write

ICLAT

FLMC

Reset

0

0

0

0

0

0

0

0

Accès :                    Toujours accessible en lecture et en écriture.
MCZI              Modulus Down-Counter Underflow Interrupt Enable
                                                                Validation de l'interruption de débordement du MDC
Fonction :            Autorise le déclenchement d'une interruption lorsque le Modulus Down-Counter déborde, c'est-à-dire                            lorsque le décompteur a atteint 0 et qu'on lui demande de décompter une fois de plus.
Etat :                        0, Interruption désactivée.   1, Interruption activée.
MODMC         Modulus Mode Enable                                            Activation du mode Modulo
Fonction :                Active le mode Modulo, c'est-à-dire, le rebouclage du comptage.
En mode modulo, le Modulus Down-Counter une fois arrivé à 0 se réinitialise à la dernière valeur qui a été chargée dans le décompteur.
En mode monocoup (le contraire du mode modulo), le Modulus Down-Counter reste à 0 une fois cette valeur atteinte.
Etat :                        0, Mode monocoup. 1, Mode modulo.
RDMCL          Read Modulus Down-Counter Load                  Paramètre de lecture du MDC
Fonction :                Défini le type d'information retournée par le Modulus Down-Counter lors d'une lecture.
Etat :                        0, Valeur actuelle du Modulus Down-Counter. 1, Valeur de chargement.
ICLAT            Input Capture Force Latch Action                              Déclenchement du Latch
Fonction :                Lorsque les Hold Registers sont activés, faire passer ce bit à '1' lance immédiatement l'opération de copie des valeurs des registres TC0, TC1, TC2, TC3, PACN0, PACN1, PACN2 et PACN3 dans les registres de maintient (Hold Register).
Etat :                        0, Sans effet.  1, Déclenchement de la copie dans les registres de maintient.
FLMC             Force Load Register into the Modulus Counter Count Register
                                                                                                      Force le chargement du MDC
Fonction :                Lorsque le Modulus Down-Counter est actif, la mise à '1' de ce bit force le chargement du contenu du registre de chargement (Load Register) dans le registre de comptage du Modulus Down Counter.
Etat :                        0, Sans effet. 1, Chargement du Load Register dans le registre de comptage du MDC.
MCEN             Modulus Down Counter Enable                                           Activation du MDC
Fonction :                Permet d'activer le Modulus Down-Counter.
Etat :                        0, Le Modulus Down-Counter est désactivé.  1, Le Modulus Down-Counter est activé.
MCPRX           Modulus Down Counter Prescaler Select      Sélection du prédiviseur du MDC
Fonction :                Permet de définir la valeur du prédiviseur du Modulus Down-Counter.
L'horloge du Modulus Down-Counter est obtenue par division de l'horloge système par la valeur du prescaler.
Etat :                        00, Pas de division ;  01, ÷ 4 ;  10, ÷ 8 ;  11, ÷ 16 ;