Académique Documents
Professionnel Documents
Culture Documents
TP 1: MICRO-CONTROLEUR
Réalisée par :
ELIBRAHIMI Amine
TALIBI Fatima Ezzahra
Amal CHAHYD
ZINEDDINE ABDELKARIM
BRAHIM EL AKHRIF
HAMDI ALAOUI MOHAMED
Filière :
GESET
Enseignant :
Mr.Abderrahim FAIL
Page 0|7
TP 1: MICRO-CONTROLEUR
Objectif de TP :
On utilise un clavier à 12 touches pour afficher un nombre avec une carte de
microcontrôleur. Donc on cherche à réaliser le programme et l’organigramme
corresponde puis on télécharger le programme obtenu en utilisant KIT MCS51.
Dons la deuxième partie on va essayer de convertir un signal analogique digitale(A/D) et
digitale analogique(D/A) à 8 bites en réalisant le programme et l’organigramme puis on
télécharger le programme dans KIT MCS51.
1- Clavier 12 touches:
Les données :
Le clavier comporte 7 fils reliés au bus de données du microcontrôleur. Les bits b2, b1, b0
représentent les colonnes de gauche à droite. Les bits b6, b5, b4 représentent les lignes
de bas en haut.
b7 b6 b5 b4 b3 b2 b1 b0
b7 X 1 1 1 1 1 1 1
1 2 3
Code b6
*Code ligne *Code colonne
ligne 4 5 6
b5 *Cherche à partir de *Cherche à partir de
7 8 9
l’emplacement l’emplacement
b4 8000H (4bites) 8010H (3bites)
* 0 #
b3
b2
Code
colonne b1
b0
Débute
A (8000H)
Lecture des lignes P a g e 1 | 7
TP 1: MICRO-CONTROLEUR
(8000H) #00H
b6….b3 forcés à zéro (lignes forcés à zéro)
Lecture état colonne
A (8010H)
Lecture des lignes
A A & #07H Code colonne placé de A (b2,b1,b0)
A A OU R0 Code colonne de A
R1 A
FIN
3-on a téléchargé notre programme dans KIT MCS51 et on a testé les touches suivantes
et on a trouvé les mêmes résultats que la théorique :
3- La correspondance :
selon le code de ligne /colonne qui on a trouvé dans la premier question on doit faire
une correspondance de ce code avec la valeur numérique corresponde à chaque code
obtenu soit ces deux tableau l’une avec les valeur L /C et autre contient les valeur
numérique :
TAB2 3B
01
02 CORRESPONDANCE 3D
03 3E
5B
04
05 5D
06 5E
07 6B
09 6D
2A 6E
TAB1
73
00 CODE LIGNE /COLONNE
75
23 76
Débute
R2 #00H
R2 R2+1
A ?= R0 Test si le code L /C
R2 R2-1
DPTR #TAB2
Pointage 1er donnée de la table 2
R2 ?= #00H
DPTR DPTR+1
R2 R2-1
R2 ?= #00H
A (DPTR)
R3 A
FIN
4- A- Signal triangle :
Pour tracer le signal triangle soit on commence de la valeur maximal 127
correspondant à 75H ou la valeur minimal -128 correspondant à 80H.
Débute
A #81H
(DPTR) A
A A+1
Synthèse de la monte
A ?= #75H
A A-1
Synthèse de la dissente
A ?= #81H
ORG 2000H
MOV DPTR, #0 E000H
MOV A,#81H
Etq1 MOVX @DPTR,A
INC A
MOV A,#75H,ETQ1
Etq1 MOVX @DPTR,A
DEC A
CJNE A,#81H,ETQ2
Page 5|7
SJMP ETQ1
TP 1: MICRO-CONTROLEUR
5- b- Signal sinusoïdale :
Pour tracer le signal sinusoïdale est un peu très difficile donc on échantillonne le signal
donc on rendre discret et on utilise les valeurs des échantillonnages trouver on les stock
dans ce tableau :
N 0 1 2 3 4 5 6 7 8 9
127sin(36.N) 0 74 120 120 74 0 -74 -120 -120 -74
Débute
R1 DPH
R0 DPL
DPH R1
DPL R0
A (DPTR )
(DPTR )
DPTR DPTR +1
Sauvegarde de l’adresse
R2 R2-1
stable
R1 DPH
R0 DPL
DPTR #0 E000H
(DPTR) A
A ?= #81H
Page 6|7
TP 1: MICRO-CONTROLEUR
ORG 2000H
SJMP ETQ1
TAB DB 0,74,120,120,74,0,-74,-120,-120,-74
ETQ1 MOV DPTR,#TAB
MOV R2,#10
MOV R1,DPH
MOV R0,DPL
ETQ2 MOV DPH,R1
MOV DPL,R0
MOVX A,@DPTR
INC DPTR
DEC R2
MOV R1,DPH
MOV R0,DPL
MOV DPTR,#0 E000H
MOVX @DPTR,A
CJNE R2,#00H,ETQ2
SJMP ETQ1
Page 7|7