Titre: LE MICROCONTROLEUR 68HC9S12E128
Auteurs: Néant
Ecole: Ecole Nationale d’Ingénieur de Tarbes
Résumé: Comme le montre le dossier précédent, le microprocesseur et plus particulièrement le microcontrôleur est un outil indispensable pour la conception d’un produit industriel. On le retrouvera comme le pilote de tous les systèmes de commande et de puissance (électriques, mécaniques, physiques…). Notre cour s’articule autour du tout récent microcontrôleur 16 bits de Motorola, le 68HC12, qui remplace très avantageusement le 68HC11, 8 bits en fin de cycle de vie. Le choix du type de microprocesseur est difficile, car de très nombreux constructeurs proposent des dispositifs similaires. Toutefois, ce produit possède un environnement de programmation très élaboré et « relativement souple » pour l’utilisateur.
Le 68HC12 se décline en un nombre de versions très important, qui diffèrent par la nature ou la taille des constituants qui entoure le coeur du microcontrôleur. Le MC9S12e128 nous est imposé par le vendeur de notre environnement de travail. Ce dernier est très performant, possède une taille de mémoire programme importante et les interfaces les plus courants (TIMER, CAD, PWM, I2C, SPI, SCI…).
L’objet de ce cours est de vous faire comprendre à quoi sert un microcontrôleur, comment il fonctionne et de vous familiariser avec sa programmation interne. Nous espérons que vous comprendrez qu’il s’agit d’un composant électronique qui utilise les techniques numériques, qui sert principalement à commander des organes extérieurs par ses sorties ou à acquérir des informations sur ses entrées. L’outil informatique et les auxiliaires de connexion ne sont là que pour aider l’utilisateur à configurer et à rentrer le programme dans le composant.
Extrait du sommaire:
Pré requis 3
Introduction.9
Chapitre 1 : Présentation du MC9S12e128 11
1.1/ A quoi sert un microcontrôleur ? 12
1.1.1/ Qu’est ce que c’est ? 12
1.1.2/ A quoi ça sert ? 12
1.2/ Structure interne du 68HC9s12e128.13
1.2.1/ Structure type d’un microcontrôleur13
1.2.2/ Structure du 68HC9S12e128 14
Dénomination 68HC12…15
Puissance du HC12… 15
Du 68HC 11 vers HC12 (pour les spécialistes) 16
1.2.3/ Les circuits d’interface (E/S) 16
1.2.4/ Organisation mémoire ou espace adressable 17
Chapitre 2 : Présentation de l’environnement de travail 19
2.1/ Outil logiciel.20
2.2/ Outil matériel 21
2.3/ Maquette de développement ENIT22
2.4/ Principes de développement.23
2.4.1/ Projet23
2.4.2/ Algorithme.23
2.4.3/ Code.24
2.4/ Principes d’utilisation de CodeWarrior 25
2.4.1/ Fenêtre projet 25
2.4.1/ Fenêtre debugger 26
2.5/ Routines associées au 68HC1126
Chapitre 3 : Les ports et les registres des entrées – sorties 27
3.1/ Désignation des fils du composant28
3.1.1/ Ports parallèles d’entrées et de sorties « ports E/S ».28
3.1.2/ Les registres des « ports E/S »29
3.1.3/ Schéma équivalent d’un fil du boîtier du MC9S1231
A/ Ports T, U, S, M, P, Q 31
B/ Ports AD32
3.1.3/ Définition symbolique des registres 33
3.2/ Méthodologie de configuration des fils d’un port d’E/S 33
3.2.1/ Les registres importants.33
3.2.2/ Le processus de configuration 34
3.2.3/ Exemple de code d’initialisation 34
Chapitre 4 : Processus de détection de changement d’état et d’interruption 35
4.1/ Détection de « changement d’état » 37
4.2/ Processus d’interruption38
4.2.1/ Déclenchement d’une interruption 38
4.2.2/ Les vecteurs d’interruption.39
A/ Les vecteurs d’interruption du MC9S12 39
B/ Détection dans un groupe d’interruption 40
C/ Affectation du vecteur d’interruption 40
4.2.2/ Les masques d’interruption 41
4.3/ Configuration d’une entrée du port AD41
4.3.1/ Configuration en vue d’un changement d’état41
A/ Configuration 41
B/ Code associé41
4.3.2/ Configuration en vue d’une interruption42
A/ Configuration 42
B/ Code associé42
4.3.3/ Le processus de configuration 43
4.3.4/ Exemple de positionnement d’un vecteur d’interruption 43
Chapitre 5 : Contrôle du temps par le TIMER 45
5.1/ Structure des TIMERs.46
5.1.1/ Organisation interne.46
5.1.2/ Initialisation d’un TIMER47
5.1.3/ Registres associés au Timer.47
5.1.3/ Code d’initialisation 48
5.2/ Débordement (overflow) du Timer 48
5.2.1/ Principe de débordement 48
5.2.1/ Les registres 48
5.1.3/ Code d’initialisation 49
5.3/ Entrées de capture (Input Capture) IOCx 49
5.3.1/ Principe des 4 entrées de capture par timer 49
A/ Principe 49
B/ Initialisation 49
C/ Les registres 50
D/ Code d’initialisation 50
5.3.2/ Interruption générée par une entrée de capture50
A/ Principe de déclenchement de TCx_ISR 50
B/ Les registres et vecteurs d’interruption51
C/ Code d’initialisation 51
5.4/ Sortie de comparaison (Output compare) IOCx.51
5.4.1/ Principe des 4 sorties de comparaison par timer 51
A/ Principe 51
B/ Initialisation 52
C/ Les registres 52
D/ Code d’initialisation 52
5.4.2/ Interruption générée par comparaison 52
Chapitre 1 6
A/ Principe de déclenchement de TCx_ISR 52
B/ Les registres et vecteurs d’interruption53
D/ Code d’initialisation 53
5.4/ Vecteurs d’interruptions des Timers 53
Chapitre 6 : Convertisseur Analogique Digital 55
6.1/ Conversion par approximations successives.56
6.1.1/ Principe 56
6.1.2/ Le CAD 16 bits du HC12 57
6.1.3/ Registres d’E/S sur le port AD 58
6.2/ Séquences et conversions.58
6.2.1/ Résolution, temps de conversion 58
Registre ATDCTL4 58
6.2.2/ Formats du résultat, conversions multiples, continues 59
A) Les résultats 59
B/ La conversion simple ou multiples voies60
C/ Conversion simple ou continue.61
D/ Les registres ATDCTL2, ATDCTL3 et ATDCTL5.61
E/ Code d’initialisation du CAN62
6.3/ Indicateurs de fin de séquence et de conversion 62
6.3.1/ Drapeaux62
6.3.2/ Compteur 63
6.3.3/ Les registres 63
A/ Compteur et drapeau de fin de séquence 63
B/ Drapeaux de fin de conversion63
Chapitre 7 : Liaison numérique série asynchrone – SCI65
7.1/ Principe de la transmission série.66
7.1.1/ Notions de base de la transmission série 66
7.1.2/ Transmission d’une TRAME normalisée 67
A/ Bit de START 68
B/ L’octet de donnée68
C/ Bit de STOP 68
D/ Bit de PARITE68
E/ La TRAME68
F/ Vitesse de transmission 69
7.2/ La SCI du microcontrôleur 69
7.2.1/ Principes 69
7.2.2/ Format de transmission70
A/ Longueur de la donnée70
B/ Parité 70
7.2.3/ Vitesse de transmission71
7.2.3/ Activation de la transmission SCI 71
7.2.4/ Drapeaux d’état de la transmission71
7.2.4/ Interruptions.72
7.2.5/ Initialisation 72
Télécharger le fichier PDF: LE MICROCONTROLEUR 68HC9S12E128