UTBM Département GESC
Printemps 2006 Durée : 2 heures. Fascicule de TP autorisé.
1
Examen IF40
I Mesure de position et de courant
Un système de mesure de position et de courant est constitué d’un codeur absolu Gray (capteur de
position angulaire), d’une sonde de courant à effet Hall et d’un DSP contrôleur TMS320LF2407
cadencé à 40 MHz. Le codeur absolu délivre l’information de position sur 4 bits (numéro de secteur de
0 à 15) codée en Gray :
Les signaux w, x, y et z délivrés par le codeur gray sont appliqués respectivement sur les entrées PA0,
PA1, PA2 et PA3 du port A du DSP contrôleur.
La sonde de courant délivre une tension comprise entre 0 et 3,3V pour un courant mesuré
allant de 0 à 1023 mA. Cette tension est appliquée sur la voie 0 du convertisseur analogique
numérique.
Le DSP a pour rôle :
- de réaliser à intervalles de temps réguliers la lecture de la position codée en Gray et de l’image
du courant
- de convertir le nombre Gray en binaire naturel
- de mémoriser la position en binaire naturel et le courant en mA respectivement dans les tables
TAB_POS et TAB_I limitées à 10000 valeurs
On choisit de calculer le code binaire à partir du code gray en utilisant les équations suivantes :
d = z
c = z XOR y
b = z XOR y XOR x
a = z XOR y XOR x XOR w
I.1 Ecrire en assembleur le sous-programme INITPORT qui permet de configurer le port A du
DSP.
I.2 L’échantillonnage de la position est cadencé par le compteur GP Timer1 à la fréquence de
1 KHz. Ecrire en assembleur le sous-programme INITEVA pour que le compteur GP Timer1
déclenche les conversions A/N à la fréquence d’échantillonnage.
I.3 Donner le sous-programme INITADC initialisant le CA/N en mode start/stop et cascadé.
Secteur Position en
binaire naturel Position délivrée
par le codeur en
code Gray
d c b a z y x w
0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 1
2 0 0 1 0 0 0 1 1
3 0 0 1 1 0 0 1 0
4 0 1 0 0 0 1 1 0
5 0 1 0 1 0 1 1 1
6 0 1 1 0 0 1 0 1
7 0 1 1 1 0 1 0 0
8 1 0 0 0 1 1 0 0
9 1 0 0 1 1 1 0 1
10 1 0 1 0 1 1 1 1
11 1 0 1 1 1 1 1 0
12 1 1 0 0 1 0 1 0
13 1 1 0 1 1 0 1 1
14 1 1 1 0 1 0 0 1
15 1 1 1 1 1 0 0 0
I.4 Donner l’organigramme ACQU qui attend la fin de conversion analogique numérique, lit et
stocke le courant en mA dans la variable I, lit et stocke la position angulaire en Gray dans la
variable G.
I.5 Ecrire en assembleur le sous-programme ACQU.
I.6 Donner l’organigramme du sous-programme G2B qui convertit en binaire naturel la variable G
contenant le code gray et stocke le résultat dans la variable B.
I.7 Ecrire en assembleur le sous-programme G2B.
I.8 En faisant appel aux sous-programmes définis plus haut, écrire le programme principal qui
initialise les périphériques utilisés et réalise l’acquisition des 10000 valeurs de courant et de
position convertie en binaire naturel en les stockant dans TAB_I et TAB_POS.
II Décodage d’adresses
II.1 Pour les 3 mémoires représentées ci-dessous, donner :
- sa capacité mémoire en bits
- sa capacité mémoire en kbits
- son organisation en nombre de mots et taille des mots (N mots de M bits)
a. b. c.
II.2 On considère un microprocesseur de 16 lignes d’adresse. Dans les 2 cas suivants, donner les
zones d’adresse en hexadécimal validées par les sorties des circuits de décodage d’adresse :
a. b.
II.3 On relie la broche d’activation d’un PIA (circuit port d’E/S) à la sortie S37 du schéma de
décodage II.2.b. Sachant que le PIA possède 2 lignes d’adresses que l’on a relié à A0 et A1,
donner :
- la zone d’adresse attribuée au PIA
- la zone d’adresse utile pour le PIA
- la zone de recouvrement éventuelle et sa taille en nombre de mots
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
A13
A14
/CS
R/W
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
D15
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
/CS
R/W
D0
D1
D2
D3
D4
D5
D6
D7
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
/CS
R/W
D0
D1
D2
D3
A13
A14
A15
0
0
1
74138
S0
S1
S2
S3
S4
S5
S6
S7
A10
A11
A12
A13
A14
A15
74138 74138
S0
S1
S2
S4
S5
S6
S7
A9
A7
A8
0
1
S30
S31
S32
S33
S34
S35
S36
S37
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !