0% ont trouvé ce document utile (0 vote)
67 vues31 pages

TP Micro

Transféré par

koyabe
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
67 vues31 pages

TP Micro

Transféré par

koyabe
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

AGENCE POUR LA SÉCURITÉ DE LA NAVIGATION AÉRIENNE EN AFRIQUE ET À MADAGASCAR

Siège social : 32-38 Avenue Jean Jaurès DAKAR (Sénégal)

BP.3144- Tel : (221) 33 849 66 00 Fax : (221) 33 823 46 54 Telex : 51 680 SG

ECOLE AFRICAINE DE LA MÉTÉOROLOGIE ET DE L’AVIATION CIVILE


B.P 746 NIAMEY – NIGER – Tél : (+227)20723662 – Fax: (227)20722236

DIVISION ELECTRONIQUE ET INFORMATIQUE


*************************

DIVISION ELECTRONIQUE INFORMATIQUE


Microcontrôleurs-Microprocesseurs

TRAVAUX PRATIQUES

Rédigé par :

1. KOYABE PEUDEBNE Mardochée


2. INDOLI AYA Ibrahima
3. KONE KASSIM
4. YAPO AKOUN Olivus
5. CHEDDAD Aminetou
6. AVOCEGAMOU Lionel N.
7. KABORE Boniface
8. NGUELE JEAN Jesly

Sous la supervision de : Dr NABIL

Promotion EAC/SEI 2023 Année 2024-2025


TP MICROCONTROLEURS-MICROPROCESSEURS 0
SOMMAIRE

SOMMAIRE .................................................................................................................................................... 1
INTRODUCTION ............................................................................................................................................. 3
OBJECTIFS DES TP .......................................................................................................................................... 4
FEUX DE SIGNALISATION ............................................................................................................................... 5
I. Objectifs et fonctionnement ............................................................................................................ 5
II. Câblage sur Proteus .......................................................................................................................... 5
III. Rédaction du programme sur MPLAB .............................................................................................. 6
IV. Simulation sur Proteus ..................................................................................................................... 8
FEUX DE SIGNALISATION A BASE D’ARDUINO................................................................................................ 8
I. Câblage sur Proteus .......................................................................................................................... 8
II. Le programme sur Arduino............................................................................................................... 8
III. Simulation sur Proteus .................................................................................................................. 10
IV. Câblage et test ................................................................................................................................ 10
STATION METEO A BASE D’ARDUINO ........................................................................................................... 11
I. Câblage sur Proteus ........................................................................................................................ 11
II. Programmation sur l’IDE Arduino................................................................................................... 12
III. Simulation sur Proteus ................................................................................................................... 13
IV. Câblage et test ................................................................................................................................ 13
MESURE DE DISTANCE A BASE D’ARDUINO ................................................................................................. 14
I. Câblage sur Proteus ........................................................................................................................ 14
II. Programmation sur l’IDE Arduino................................................................................................... 15
III. Simulation sur Proteus ................................................................................................................... 17
IV. Câblage et test ................................................................................................................................ 17
CALCULATRICE A BASE D’ARDUINO ............................................................................................................. 18
I. Câblage ........................................................................................................................................... 18
III. Simulation sur Proteus ................................................................................................................... 22
IV. Câblage et test ................................................................................................................................ 22
COMMANDE D’UN MOTEUR A BASE D’ARDUINO ....................................................................................... 24
I. Câblage sur Proteus ........................................................................................................................ 24
II. Programme Arduino- Moteur CC ................................................................................................... 25

TP MICROCONTROLEURS-MICROPROCESSEURS 1
III. Simulation sur Proteus ................................................................................................................... 26
IV. Câblage et test pratique ................................................................................................................. 27
1. Programme Arduino du moteur pas à pas ................................................................................. 27
2. Fonctionnement ....................................................................................................................... 28
CONCLUSION ............................................................................................................................................... 29

TP MICROCONTROLEURS-MICROPROCESSEURS 2
INTRODUCTION

Les microprocesseurs-microcontrôleurs jouent un rôle fondamental dans le domaine de


l’électronique et de l’informatique, en assurant le traitement des instructions et la gestion des
périphériques dans divers systèmes embarqués. Comprendre leur fonctionnement et leur
programmation est essentiel pour maîtriser la conception et l’optimisation des applications
basées sur ces composants.

Ce rapport regroupe une série de travaux pratiques réalisés dans le cadre du module de
microprocesseurs-microcontrôleurs. Chaque TP explore un aspect spécifique, allant de
l’architecture interne des microprocesseurs à leur programmation en langage assembleur, en
passant par l’interfaçage avec divers périphériques.

TP MICROCONTROLEURS-MICROPROCESSEURS 3
OBJECTIFS DES TP

Les objectifs dans ces TP sont de :

 Comprendre l’architecture et le fonctionnement des microprocesseurs PIC.


 Apprendre la programmation en langage assembleur et son interaction avec le matériel à
partir des logiciels MPLAB et Proteus.
 Maîtriser l’interfaçage des microcontrôleurs avec des périphériques (afficheurs, capteurs,
etc.).
 Analyser et optimiser le traitement des instructions pour améliorer les performances.
 Maîtriser le fonctionnement de l’Arduino c’est à dire matériel et logiciel.

TP MICROCONTROLEURS-MICROPROCESSEURS 4
FEUX DE SIGNALISATION

I. Objectifs et fonctionnement
L'objectif de ce TP était de concevoir et programmer un système de feux de signalisation
à l’aide du microcontrôleur PIC16F84A. Pour cela, nous avons utilisé le logiciel MPLAB pour écrire
et assembler le code en langage assembleur, ainsi que Proteus pour la simulation du circuit
électronique.
À travers ce TP, nous avons eu à :

 Comprendre le fonctionnement du PIC16F84A et son architecture.


 Maîtriser la programmation en assembleur pour contrôler les sorties du microcontrôleur.
 Simuler un système de feux tricolores respectant un cycle de circulation.

Le tableau suivant présente le fonctionnement de ce système :

Voie1 Voie2
Rouge1 Orange1 Vert1 Rouge2 Orange2 Vert2
1 0 0 1 0 0
0 0 1 1 0 0
0 1 0 1 0 0
1 0 0 0 0 1
1 0 0 0 1 0

II. Câblage sur Proteus


Pour la simulation des feux de signalisation, nous avons utilisé les Traffic Lights, qui sont
des modules intégrés dans Proteus permettant de gérer automatiquement les feux tricolores
selon des cycles programmés.
Dans ce TP, le câblage sur Proteus consiste à :
• Placer et configurer les Traffic Lights, qui assurent la gestion automatique des feux de
signalisation.
• Vérifier les connexions des feux rouges, oranges et verts pour respecter le fonctionnement
réel d'un carrefour.
• Ajuster les paramètres du Traffic Lights pour définir la durée de chaque phase (rouge,
orange, vert).

TP MICROCONTROLEURS-MICROPROCESSEURS 5
Ci-dessous le câblage sur Proteus :

III. Rédaction du programme sur MPLAB


Pour la rédaction du programme, nous avons par ordre :

 Inclut le PIC16F84A dans le fichier asm de MPLAB


 Sélectionné la banque 1 du PIC16F84A pour la configuration du PORTB (bsf STATUS, RP0)
 Sélectionné la banque 0 pour l’initialisation du PORTB (bcf STATUS, RP0)
 Écris la fonction temporisation

Programme temporisation Cycle des instructions


temp :
movlw N1 1
movwf R1 1
loop1:
movlw N2 1
movwf R2 1

loop2:
decfsz R2 (1+2)(N2-1)+2=3N2-1
goto loop2

TP MICROCONTROLEURS-MICROPROCESSEURS 6
decfsz R1 (1+2+1+1+3N2-1)(N1-
goto loop1 1)+2=4N1+3.N1.N2-3N2-2
return 2

On trouve en général après avoir négligé certains termes :


Temporisation=12.N1.N2/FQ avec FQ la fréquence du Quartz dans notre cas égale
à la fréquence interne du PIC16F84A.
FQ=1MHz et nous avons voulu dans notre cas une temporisation d’une seconde.
Pour N1=N2, on a eu l’équation :
12.(𝑁1)2
= 1 donc N1=N2=289 pour avoir une temporisation d’une
109
seconde.
Ci-dessous le programme écrit sur MPLAB :

Nous avons allumée les rouges simultanément pour permettre à ceux se


trouvant au carrefour de libérer avant d’ouvrir la première ou deuxième voie.

TP MICROCONTROLEURS-MICROPROCESSEURS 7
IV. Simulation sur Proteus
La compilation sur MPLAB a généré un fichier .hex pour cette simulation.

Fin de ce TP car le fonctionnement était bien respecté.

TP MICROCONTROLEURS-MICROPROCESSEURS 8
FEUX DE SIGNALISATION A BASE D’ARDUINO

Nous avons réalisé le même système mais à base d’Arduino. L’objectif était de comprendre
les notions de base d’Arduino.

I. Câblage sur Proteus

II. Le programme sur Arduino


Le processus est le même que pour le PIC mais ici on a utilisé le langage Arduino qui est un
langage propre à la plateforme Arduino. Nous avons écrit :
pinMode(broche, OUTPUT); pour la configuration en sortie.
digitalWrite(broche, HIGH); pour allumer un feu.
digitalWrite(broche, LOW); pour éteindre un feu.
Le programme de la page suivante permet le fonctionnement du système de feux de
signalisation.

TP MICROCONTROLEURS-MICROPROCESSEURS 8
TP MICROCONTROLEURS-MICROPROCESSEURS 9
III. Simulation sur Proteus

IV. Câblage et test

Fin de ce TP car le fonctionnement était bien respecté.

TP MICROCONTROLEURS-MICROPROCESSEURS 10
STATION METEO A BASE D’ARDUINO
L’objectif de ce TP est de réaliser à base d’Arduino une station METEO qui permet à
l’utilisateur de visualiser la température et l’humidité du milieu.
Nous avons pour cela utilisé pour cela :

 Une carte Arduino Uno


 Un capteur de température DHT11
 Un afficheur LCD 16x2

I. Câblage sur Proteus


Broches DHT11 Broches Arduino
GND GND
DATA 6
VDD 5V
Broches LCD 16x2 Broches Arduino
RS 12
E 11
D4 5
D5 4
D6 3
D7 2

TP MICROCONTROLEURS-MICROPROCESSEURS 11
II. Programmation sur l’IDE Arduino
Pour le programme, nous avons eu à télécharger et inclure la bibliothèque du DHT11 dans
l’IDE Arduino. La bibliothèque du LCD était disponible à la base.
Le code permettait de récupérer la température mesurée par le capteur et de l’afficher sur
l’afficheur LCD.

TP MICROCONTROLEURS-MICROPROCESSEURS 12
III. Simulation sur Proteus

IV. Câblage et test

Pour le câblage, nous avons aussi utilisé un potentiomètre pour varier l’opacité du texte
de la LCD.

TP MICROCONTROLEURS-MICROPROCESSEURS 13
MESURE DE DISTANCE A BASE D’ARDUINO

L'objectif d'un TP à base d'Arduino et d'un capteur à ultrason est de mesurer des distances
avec précision en utilisant les ondes ultrasonores. Il permet d'apprendre à interfacer le capteur
HC-SR04 avec Arduino, d'acquérir et traiter les données de distance, puis d'afficher ou d'exploiter
ces informations pour des applications comme la détection d'obstacles ou la gestion d'un système
automatisé, un buzzer se déclenchant avec différentes tonalités en fonction de la distance
mesurée.

Nous avons pour cela utilisé pour cela :

 Une carte Arduino Uno


 Un capteur à ultrasons
 Un afficheur LCD 16x2
 Un buzzer

I. Câblage sur Proteus


Broches Capteur à Ultrasons Broches Arduino
GND GND
TRIG 8
ECHO 9
VCC 5V
Broches LCD 16x2 Broches Arduino
RS 12
E 11
D4 5
D5 4
D6 3
D7 2
Broches du Buzzer Broches Arduino
Borne positive 6
Borne négative GND

La broche de test de l’ultrason est connectée à un potentiomètre pour la simulation.

TP MICROCONTROLEURS-MICROPROCESSEURS 14
II. Programmation sur l’IDE Arduino
Pour le programme, nous avons eu à télécharger et inclure la bibliothèque du capteur à
ultrasons dans l’IDE Arduino. La bibliothèque du LCD était disponible à la base.
Le code permettait de mesurer la distance séparant un obstacle du capteur à ultrason et de
la mettre l’afficheur LCD.

TP MICROCONTROLEURS-MICROPROCESSEURS 15
TP MICROCONTROLEURS-MICROPROCESSEURS 16
III. Simulation sur Proteus

IV. Câblage et test

TP MICROCONTROLEURS-MICROPROCESSEURS 17
CALCULATRICE A BASE D’ARDUINO

L’objectif de ce TP, était de :

 Apprendre à interfacer un clavier matriciel avec l'Arduino.


 Lire et interpréter les touches pressées sur le clavier.
 Afficher des nombres et des opérations en temps réel sur un afficheur LCD.
 Mettre en forme les résultats pour une meilleure lisibilité.
 Implémenter l'addition, la soustraction, la multiplication et la division.
 Utiliser les entrées numériques pour capter les touches du clavier.
 Exploiter les sorties pour afficher les résultats sur un écran.

Nous avons pour cela utilisé pour cela :

 Une carte Arduino Uno pour simulation sur Proteus


 Une carte Arduino Mega pour test pratique
 Un afficheur LCD I2C 16x2
 Un clavier matriciel

I. Câblage
Broches Afficheur LCD I2C 16x2 Broches Arduino Mega
GND GND
VCC 5V
SDA 20
SCL 21
Broches Clavier Broches Arduino Mega
R1 2
R2 3
R3 4
R4 5
C1 9
C2 8
C3 7
C4 6

TP MICROCONTROLEURS-MICROPROCESSEURS 18
II. Programme Arduino

TP MICROCONTROLEURS-MICROPROCESSEURS 19
TP MICROCONTROLEURS-MICROPROCESSEURS 20
TP MICROCONTROLEURS-MICROPROCESSEURS 21
III. Simulation sur Proteus

IV. Câblage et test

TP MICROCONTROLEURS-MICROPROCESSEURS 22
TP MICROCONTROLEURS-MICROPROCESSEURS 23
COMMANDE D’UN MOTEUR A BASE D’ARDUINO

L’objectif dans ce TP était de :

 Comprendre le fonctionnement des boutons poussoirs.


 Maitriser le principe de fonctionnement des moteurs CC et pas à pas
Nous avons eu besoin de :

 Une carte Arduino


 Un moteur CC pour simulation sur Proteus
 Un moteur pas à pas
 Deux boutons poussoirs
 Un potentiomètre
 Quatre transistors pour simulation sur Proteus

I. Câblage sur Proteus


Boutons poussoirs Broches Arduino
BP Marche 4
BP2 Sens 5
Moteur Broches Arduino
Sens Avant 9
Sens Arrière 10
Potentiomètre Broches Arduino
Curseur A0

TP MICROCONTROLEURS-MICROPROCESSEURS 24
II. Programme Arduino- Moteur CC

TP MICROCONTROLEURS-MICROPROCESSEURS 25
III. Simulation sur Proteus

TP MICROCONTROLEURS-MICROPROCESSEURS 26
Nous avons pour cette simulation utilisé un terminal virtuel pour visualiser la valeur analogique
du potentiomètre qui définit la vitesse de rotation du moteur.

IV. Câblage et test pratique


Pour le fonctionnement réel, le module L298N qu’on devait utiliser pour commander le
commande le moteur était en panne. Nous avons finalement commandé un moteur pas à pas
unipolaire à l’aide du circuit ULN2003APG mais pas à l’aide des boutons poussoirs.
1. Programme Arduino du moteur pas à pas

TP MICROCONTROLEURS-MICROPROCESSEURS 27
2. Fonctionnement

TP MICROCONTROLEURS-MICROPROCESSEURS 28
CONCLUSION

En conclusion, ce TP nous a permis d’explorer et de comparer l’utilisation de l’Arduino et


du microcontrôleur PIC16F84A dans la réalisation de montages électroniques. Grâce aux
montages pratiques et à la simulation sous Proteus, nous avons pu concevoir, tester et analyser le
fonctionnement des circuits avant leur mise en œuvre réelle. Cette approche nous a aidés à mieux
comprendre les différences entre ces deux plateformes en termes de programmation, de
flexibilité et d’application. Ce travail nous offre ainsi une base solide pour la conception de
systèmes embarqués plus complexes et optimisés.

TP MICROCONTROLEURS-MICROPROCESSEURS 29

Vous aimerez peut-être aussi