1 Partie (voir premier poly)

publicité
CNAM
ELE118
Sommaire 2ème partie
I
Electronique ELE118
2ère Partie
Programmation avancée des microcontrôleurs
------- Attention : Ce cours n'est pas une initiation -------
1ère Partie (voir premier poly)
1.
1.1.
1.2.
1.3.
1.4.
1.5.
1.6.
2.
2.1.
2.2.
2.3.
3.
3.1.
3.2.
3.3.
3.4.
4.
4.1.
4.2.
5.
5.1.
5.2.
5.3.
5.4.
6.
6.1.
6.2.
6.3.
6.4.
7.
7.1.
7.2.
7.3.
INTRODUCTION ET MATERIEL
Microprocesseurs, Microcontrôleurs et les autres
La « carte » à Microcontrôleur
Types de structure interne
Le mode Single Chip d’un microcontrôleur
Le mode étendu d’un microcontrôleur
Problèmes de puissance
INTRODUCTION A LA PROGRAMMATION
Choix du ou des langages de programmation
Programmation structurée
Chaîne de compilation
PROGRAMMATION EN ASSEMBLEUR
Résumé du langage assembleur
L’Assembleur type HC12, résumé
Programme de démonstration en assembleur HC12 : 4_leds
Astuces de gestion de variables indicées en assembleur
PROGRAMMATION EN C, INTRODUCTION
Avantage
Programme de démonstration en C : 4_leds_c
C POUR MICROCONTROLEURS
Le langage C « minimum »
Fonctions en C
Travail d’un compilateur
Optimisations du C pour accélérer la vitesse
ECRITURE EN ASSEMBLEUR DES FONCTION C
(EN TYPE HC12)
Rappel sur les « fausses fonctions »
Premier exemple de vraie fonction
Autres exemples de vraies fonctions
Discussion sur le pointeur de trame
SYNCHONISATION SUR EVENEMENTS INTERRUPTIONS
Sondage ou Interruption ?
Sondage
Interruption
8.
LES VECTEURS D’INTERRUPTION
8.1.
8.2.
9.
9.1.
9.2.
9.3.
9.4.
10.
10.1.
10.2.
10.3.
MISE AU POINT
1
1
1
3
4
4
7
14
14
15
15
22
23
32
44
50
52
52
52
62
62
70
72
75
78
78
79
83
85
86
86
87
88
APPLICATION FINALE
92
Développement sur Microcontrôleurs nécessitant un « Moniteur » : exemple l’HC11
92
Développement sur Microcontrôleurs sans « Moniteur » : exemple HC12 et ‘BDM’
98
PORT PARALLELE
101
Utilisation en simple port IO
101
Utilisation possibles de certaines lignes en entrées d’interruption
101
Le Port Integration Module de l’HC12, résumé
101
Ports parallèles d’entrée-sortie (I/0) en usage général que l’on utilisera sur notre maquette 102
PORT SERIE ASYNCHRONE TYPE UART
105
Petit rappel sur la liaison série asynchrone
105
Le port SCI de l’HC12: Sérial Communication Interface (RS232)
106
Organigrammes
108
CNAM
11.
11.1.
11.2.
11.3.
11.4.
12.
12.1.
12.2.
12.3.
12.4.
12.5.
12.6.
13.
13.1.
13.2.
14.
14.1.
14.2.
14.3.
14.4.
15.
15.1.
15.2.
15.3.
15.4.
ELE118
Sommaire 2ème partie
II
PORT SERIE SYNCHRONE
109
utilisation
109
Principe du SPI
109
Description brève des ports SPI de l’HC12
110
Exemples d’application
112
LE BUS IIC
116
Câblage
116
protocole résumé
117
Port IIC de certains HC12
120
Utilisation de composants IIC sur deux lignes quelconques d’un port parallèle.
123
Exemple de circuit à bus IIC : le CNA MAX518
127
Autres exemples de composants classiques à Bus IIC : EEPROM, RTC
129
AUTRES BUS NON ETUDIES ICI
132
Bus CAN
132
Bus One Wire
132
ORGANES COMPLEMENTAIRES
133
La PLL (exemple HC12)
133
Detection « low voltage » (exemple HC12)
134
Chien de garde (Watch Dog, exemple sur HC12)
135
Reset par programme
136
ANNEXES SUR LE HC12 : PILE, INSTRUCTIONS, VECTEURS D’INTERRUPTIONS
137
Evolution automatique du pointeur de pile en HC12
137
Vecteurs d’interruption HC12
137
Notations
140
Tableau d’instructions
141
CNAM
ELE118
Sommaire 2ème partie
III
2ème Partie
16.
16.1.
16.2.
16.3.
16.4.
16.5.
17.
17.1.
17.2.
17.3.
18.
18.1.
18.2.
18.3.
18.4.
19.
19.1.
19.2.
20.
20.1.
20.2.
20.3.
21.
21.1.
21.2.
21.3.
21.4.
21.5.
21.6.
22.
22.1.
22.2.
22.3.
22.4.
23.
23.1.
23.2.
23.3.
24.
24.1.
24.2.
24.3.
24.4.
25.
25.1.
25.2.
25.3.
25.4.
26.
26.1.
26.2.
26.3.
REPRESENTATION DES NOMBRES, ERREURS
151
Généralités sur les erreurs et précisions
151
Code Binaire Virgule Fixe
155
Code Binaire Virgule Flottante X = M.2E
158
Code DCB virgule fixe, Code Hexadécimal et Code ASCII
159
Choix des modes de représentation
160
GENERALITES SUR L’ARITHMETIQUE BINAIRE VIRGULE FIXE
161
Introduction
161
Les indicateurs C, N, Z et V en assembleur
162
Point important : calcul d’une somme, le résultat final pratique ne débordant pas.
164
LE LANGAGE EVOLUE (C) ET L'ARITHMETIQUE
165
Calculs en virgule fixe
165
Calculs en virgule flottante
170
Conversions Binaire (Virgule fixe) DCB Notions de « Driver »
172
Calcul de fonctions classiques en virgule fixe
176
GENERATION D’INTERVALLES DE TEMPS, TIMER
181
Par logiciel
181
Par Timer (Exemples sur HC12)
183
MESURE DE FREQUENCE ET DE PERIODE
190
Le Timer HC12 en ‘Input Capture’
190
Le Pulse Accumulateur de l’HC12
190
Mesure de fréquences et de périodes (en C)
192
TRAVAIL SUR DES GRANDEURS PHYSIQUES
197
Utilisation des Convertisseur Analogiques Numériques
197
Mesure d’une grandeur Physique
199
Traitement de signal, signaux de module < 1
204
Mise en œuvre du CAN du 68HC12
205
Petits traitements de signal sur microcontrôleur, échantillonnage d’un signal
210
Exemple de petits traitements de signal : valeur efficace d’un signal, sur HC12
213
PORT PWM PULSE WIDE MODULATION
219
Principe : un pseudo CNA ?
219
Applications
219
Le port PWM de l’HC12
220
Application : pseudo CNA signé 8 bits
222
AFFICHAGE SUR PANNEAU CRISTAUX LIQUIDES
224
Exemple de composant
224
Câblage sur un microcontrôleur, Driver
226
Fonctions C utilitaires développées pour le composant précédent
228
GESTION DE CLAVIER 16 TOUCHES
237
Simples touches isolées
237
claviers
237
Exemple de câblage d’un tel clavier sur un microcontrôleur
241
Logiciel de gestion du clavier
243
NOTIONS SUR MULTITACHE ET TEMPS REEL
250
Quelques définitions
250
Bases d’un système multitâche et temps réel
251
Système multitâche à temps partagé
254
Mini exécutif "scolaire" multitâche à temps partagé
259
ANNEXES SUR LE HC12 : PILE, INSTRUCTIONS, ET VECTEURS D’INTERRUPTION
281
Evolution automatique du pointeur de pile en HC12
281
Vecteurs d’interruption HC12
281
Instructions assembleur : voir première partie
283
CNAM
ELE118
Sommaire 2ème partie
IV
Téléchargement