Le microcontrôleur MC9S12

Hugues ANGELIS

page 8

 

 

Les ports à interruptions (Ports J et P).

Les ports J et P sont les 2 ports du 9S12 capable de déclencher des interruptions sur le processeur.

Il existe en interne un port H mais il est entièrement absent du microcontrôleur dans sa version 80 broches. Les registres associés à ce port sont toutefois matériellement présents dans le plan mémoire

Le port J n’est pas complet dans la version 80 broches de notre boîtier, seuls les 2 bits de poids fort sont présents (PJ6 et PJ7).

Le port P n’est pas complet dans la version 80 broches de notre boîtier, seuls les 6 bits de poids faible  et le bit de poids fort sont présents (PP6 est absent). Il est associé, par défaut sur le microcontrôleur, aux sorties de PWM.

La gestion des interruptions est réalisée par plusieurs registres de ces ports. Une interruption ne peut se déclencher sur le cœur du 9S12 qu’à partir du moment où :
·         Les registres valident le déclenchement d'une interruption
·         La durée minimum de l’impulsion est au minimum de 4 périodes de l'horloge interne du microcontrôleur après le front.

Dans un souci de fluidité de ce document, les registres du port J ne seront pas étudiés ici, ces registres étant l’exacte réplique de ceux du port P en remplaçant le P final, décrits ci-dessous, par un J. 

PTP (Port P Data Register)                                                                           Base address + 600

Bit

7

6

5

4

3

2

1

0

Read

PTP7

PTP6

PTP5

PTP4

PTP3

PTP2

PTP1

PTP0

Write

Reset Value

X

X

X

X

X

X

X

X

Accès :  Toujours accessible en lecture et en écriture.

PTPX                 Port P Data Bit X                                                            Bit X de donnée du port P.
Fonction :          Permet, si le bit est défini en entrée de lire la valeur logique présente sur la broche respective du port P, et si le bit est défini en sortie de fixer la valeur logique présente sur la broche respective du port P.

 

PTIP (Port P Data Input Register)                                                                Base address + 601

Bit

7

6

5

4

3

2

1

0

Read

PTIP7

PTIP6

PTIP5

PTIP4

PTIP3

PTIP2

PTIP1

PTIP0

Write

 

 

 

 

 

 

 

 

Reset Value

X

X

X

X

X

X

X

X

Accès :  Toujours accessible en lecture et en écriture.

PTIPX                Port P Data Input Bit X                                    Bit X de donnée entrante du port P.
Fonction :          Permet de lire la valeur présente sur la broche du port P (qu'il soit configuré en entrée ou en sortie), contrairement à la lecture de PTPX (qui effectue la lecture de la valeur mise en registre).

 

DDRP (Port P Data Direction Register)                                                       Base address + 602

Bit

7

6

5

4

3

2

1

0

Read

DDRP7

DDRP6

DDRP5

DDRP4

DDRP3

DDRP2

DDRP1

DDRP0

Write

Reset Value

0

0

0

0

0

0

0

0

Accès :  Toujours accessible en lecture et en écriture.

DDRPX               Port P Data Direction Bit X                                          Direction du bit X du port P.
Fonction :          Permet de définir si la broche du port P, associée au bit, est définie comme une entrée ou comme une sortie.
Etat :                 0 : Bit en entrée  1 : Bit en sortie.


 

RDRP (Port P Reduced Drive Register)                                                      Base address + 603

Bit

7

6

5

4

3

2

1

0

Read

RDRP7

RDRP6

RDRP5

RDRP4

RDRP3

RDRP2

RDRP1

RDRP0

Write

Reset Value

0

0

0

0

0

0

0

0

Accès :  Toujours accessible en lecture et en écriture.

RDRPX               Port P, Bit X Reduced Drive               Réduction de la sortance du bit X du port P.
Fonction :          Permet d'activer la réduction de la sortance de la broche sélectionnée, associée au bit X du port P.
                        L'activation de ce bit diminue le courant maximum en sortie de la broche sélectionnée. Cette réduction permet de limiter la consommation de courant                         par le microcontrôleur, mais ralentit aussi la vitesse des transitions.

Etat :                 0 : Pas de diminution de la sortance     1 : Sortance réduite.

 

PERP (Port P Pull Device Enable Register)                                                Base address + 604

Bit

7

6

5

4

3

2

1

0

Read

PERP7

PERP6

PERP5

PERP4

PERP3

PERP2

PERP1

PERP0

Write

Reset Value

0

0

0

0

0

0

0

0

Accès :  Toujours accessible en lecture et en écriture.

PERPX               Port P, Bit X Pull Device Enable                Résistance de tirage du bit X du port P.
Fonction :          Permet d'activer l'utilisation d'une résistance de tirage sur la broche sélectionnée du port P. La résistance de tirage n'est utile que pour une broche                          définie en entrée.
                        Ces pull-up sont internes au microcontrôleur et ont une valeur comprise entre 25KΩ et 50KΩ.
Etat :                 0 : Pas de résistance de tirage  1 : Activation de la résistance de tirage.

 

PPSP (Port P Polarity Select Register)                                                        Base address + 605

Bit

7

6

5

4

3

2

1

0

Read

PPSP7

PPSP6

PPSP5

PPSP4

PPSP3

PPSP2

PPSP1

PPSP0

Write

Reset Value

0

0

0

0

0

0

0

0

Accès :  Toujours accessible en lecture et en écriture.

PPSPX               Port P, Bit X Polarity Selection                   Choix de la polarité du bit X du port P.
Fonction :          Permet de choisir à la fois le type de résistance de tirage associée au bit sélectionné du port P (si la broche est définie en entrée et si le bit                          correspondant du registre PERP est actif) et le front actif de l'interruption (si le bit correspondant du registre PIEP est actif).
Etat :                 0 : Résistance de Pull-Up, Interruption sur front descendant  1 : Résistance de Pull-Down, Interruption sur front montant.

 

PIEP (Port P Interrupt Enable Register)                                                      Base address + 606

Bit

7

6

5

4

3

2

1

0

Read

PIEP7

PIEP6

PIEP5

PIEP4

PIEP3

PIEP2

PIEP1

PIEP0

Write

Reset Value

0

0

0

0

0

0

0

0

Accès :  Toujours accessible en lecture et en écriture.

PIEPX                Port P, Bit X Interrupt Enable         Activation de l'interruption du bit X du port P.
Fonction :          Permet de définir si les éventuelles conditions d'une interruption présente sur la broche du port P (dépendant du bit PPSPX) est masquée (inopérante)                           ou activée (opérante).
Etat :                 0 : Interruption masquée  1 : Interruption activée.

 

PIFP (Port P Interrupt Flag Register)                                                           Base address + 607

Bit

7

6

5

4

3

2

1

0

Read

PIFP7

PIFP6

PIFP5

PIFP4

PIFP3

PIFP2

PIFP1

PIFP0

Write

Reset Value

0

0

0

0

0

0

0

0

Accès :  Toujours accessible en lecture et en écriture.

PIFPX                Port P, Bit X Interrupt Flag                Indicateur d'interruption du bit X du port P.
Fonction :          Permet de signaler si le signal a généré une interruption sur la broche associé au bit sélectionné du port P. Cet indicateur est effacé par l'écriture d'un                            '1' dans le bit associé.
Etat :                 0 : Pas d'interruption vue sur cette broche    1 : Interruption détectée sur cette broche.

 

 

page précédente (7)

Retour à l'entrée du site

page suivante (9)