Top Banner
RB Microcontrôleur HC12 1 Microcontrôleur 68HC12 Motorola 68HC912BC32
52

RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

Apr 04, 2015

Download

Documents

Alard Barbe
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 1

Microcontrôleur68HC12

Motorola

68HC912BC32

Page 2: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 2

Architecture du HC12

• Processeur CPU12

• 32 koctets Flash EEPROM

• 1 koctets RAM

• 768 octets EEPROM• PORTAD A/D 8 canaux 10 bits

• PORTT Timer

• PORTS Série SCI, SPI, 2 I/O

• PORTP 4 PWM, 4 I/O

• PORTCAN CANBUS, 5 I/O

• PORTA Adresses/Data

• PORTB Adresses/Data

• PORTE Contrôle

• BDI Debug

Page 3: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 3

CPU12, modèle des registres

• Registres de données 8 bits : A et B

• Ensemble: 16 bits : D

• registres pointeurs 16 bits :

IX et IY• Pointeur de pile : SP• Registre PC• Fanions S X H I N Z V C

Page 4: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 4

CPU12, modes

Page 5: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 5

CPU12, plan mémoire

Page 6: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 6

CPU12, Interruptions

Page 7: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 7

HC12, Registres I/O

Page 8: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 8

HC12, Registres I/O

Page 9: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 9

HC12, Registres I/O

Page 10: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 10

Convertisseur A/D

• 8 canaux multiplexés• 10 bits de résolution• 8 registres 16 bits pour

résultats : ATD0..ATD7• Modes:

– 1 conversion de 4 ou 8 canaux– scan en continu– scan multiples d ’un canal

Page 11: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 11

Convertisseur A/D

ATDCTL0 et 1 : Réservés

ADR0H..ADR7H :8 registres de résultat 8 bits

• ATDCTL0..ATDCTL5 :6 registres de contrôle (8 bits)

• ATDSTAT :1 registre de status (16 bits)

• PORTAD :1 registre d ’entrée du port

• ADR0..ADR7 :8 registres de résultat 16 bits

Page 12: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 12

Convertisseur A/D

• ADPU : 1: Autorise ATD module• AFFC : 1: ATD Fast Flag Clear, Met à « 0 » bit Conversion

Complète (CCF) par lecture du résultat de la conversion, sans lire le registre de status

• AWAI : 1: Stop si mode WAIT• ASCIE : 1 :ATD Séquence Complète Interrupt Enable• ASCIF : (lecture) Flag de conversion complète

Page 13: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 13

Convertisseur A/D

Page 14: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 14

Convertisseur A/D

• S10BM 1: 10 bits, 0: 8 bits• SMP1, SMP0 Délai d ’échantillonnage• PRS4..PRS0 Clock pour ATD : compris entre 500 kHz et 2 MHz

ATDClk = PCLK / ( PRSx + 1 )

PClk = fQuartz/2

Page 15: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 15

Convertisseur A/D

Page 16: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 16

Convertisseur A/D

• S8CM 0 : 4 conversions, 1: 8 conversions• SCAN 0 : 1 séquence de 4/8 conversions

1 : mode continu de 4/8 séquences• MULT 0 : 4/8 conversions simple canal CD..CA

1 : 4/8 conversions 4/8 canaux

Page 17: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 17

Convertisseur A/D

• Canaux C, D, E et F

pour Tests

• L ’écriture dans ATDCTL5 initie une séquence de conversion

Page 18: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 18

Convertisseur A/D

• SCF Séquence Complète Flag• CC<2..0> No Séquence en cours• CCF7..CCF0 Conversion Complète Flag

1 par Registre ADRx

Page 19: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 19

Convertisseur A/D

• SCF, CCF7..CCF0 :• Activé lorsque la conversion représentée est

terminée• Mise à « 0 », dépend du bit AFFC de ATDCTL2 :

AFFC : 0 1

SCF Ecrire dans ATDCTL5 Lecture premier résultat

pour nouvelle conversion

CCFx Lecture ATDSTAT, puis ADRx Lecture registre ADRx

Page 20: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 20

Convertisseur A/D

• Un bit par entrée• Attention la lecture de ce registre peut provoquer

une perturbation sur le signal analogique

Page 21: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 21

Convertisseur A/D

• Résultat de la conversion :• ADRxH x: 0..7

– résultat en mode 8 bits

• ADRx– résultat en mode 10 bits : bits 15..6, bits 5..0 = 0

Page 22: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 22

PWM

• Mode aligné à gauche

Page 23: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 23

PWM

• Mode centré

Page 24: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 24

PWM, Horloge

• Groupe PWM0 et PWM1

• Groupe PWM2 et PWM3

Page 25: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 25

PWM, Registre PWCLK

• CON23, CON01 1: PWM23 / PWM01 2 x16 bits

0: 4 x 8 bits • PCKA<2..0> Prescalers• PCKB<2..0>

Page 26: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 26

PWM, Registre PWPOL

• PCLKx Source de l’horloge– 0: Clock A : PWM0 et 1

Clock B : PWM2 et 3– 1: S0 : PWM0 et 1

S1 : PWM2 et 3

• PPOLx Polarité début du PWM

Page 27: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 27

PWM, Registre PWEN

• PWENx Autorise PWMx sur Port P

PWMx en sortie, indépendamment de DDRP

Page 28: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 28

PWM, Registre PWPRES

• Prescaler des horloges A et B

Page 29: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 29

PWM, Registre prescaler

• PWSCAL0/1 Prédiviseur 0 et 1• PWSCNT0/1 Etat du prédiviseur 0, 1

Page 30: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 30

PWM, Registres PWCNT0..3

• Etat du compteur PWMx (0..3)

Page 31: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 31

PWM, Registres PWPERx-PWDTYx

Page 32: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 32

PWM, Duty cycle

Page 33: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 33

PWM, Registres

• PSWAI Wait mode -> stop clk generator• CENTR Mode centré (1), Aligné (0)• RDP Réduction Puissance pour P (1)• PUPP Pull-up Enable Port P (1)• PSBCK Disable PWM si BDI actif (1)

Page 34: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 34

PWM, Registres PORT P

• Direction 0: entrée

1: sortie

Page 35: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 35

Horloges

Page 36: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 36

Horloges

• Diviseurs pour – SCI– RTI– COP

Page 37: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 37

Horloges

• Diviseurs pour – Timer

Page 38: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 38

Horloges

• Diviseurs pour – SPI– ATD– BDM

Page 39: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 39

Page 40: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 40

Timer, Accumulateur d’impulsions

• TCNT : Compteur libre• TIOC : Input Capture /

Output Compare

Page 41: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 41

Timer, registres

Page 42: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 42

Ports séries

• SCI : Serial Communication

Interface

• SPI : Synchronous Peripheral Interface

Page 43: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 43

Port série asynchrone, SCI

Page 44: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 44

Port série synchrone, SPI

Page 45: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 45

Bus CAN

Page 46: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 46

Bus CAN

Page 47: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 47

Bus CAN

Page 48: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 48

Bus CAN

Page 49: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 49

Bus CAN

Page 50: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 50

Bus CAN

Page 51: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 51

Bus CAN

Page 52: RBMicrocontrôleur HC121 Microcontrôleur 68HC12 Motorola 68HC912BC32.

RB Microcontrôleur HC12 52

Bus CAN