Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
Architecture des système à microprocesseur et microcontroleur 2
Objectifs
● Connaitre le vocabulaire associé aux microprocesseurs et microcontroleurs
● Etre capable de programmer un microcontroleur en langage C pour répondre à un cahier des charges
● Etre capable d'utiliser les outils de développement d'une application à microcontroleur
Architecture des système à microprocesseur et microcontroleur 3
Organisation
➢ 7 CM➢11 TD➢9 TP notés➢2 Controles
Architecture des système à microprocesseur et microcontroleur 4
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Pourquoi des système à microprocesseur ?
Besoin grandissant de systèmes intelligents capables de s'adapter rapidement à un changement ou une commande
Dans quels domaines ?
Tous les domaines, grand public et industriels● Automobile (ABS, commande au volant,etc.)●Industriel (automatisation des chaine de production),●Téléphonie,●Électromenager,●Domotique,●Ludique (console de jeu, jeu télécommandés, etc.),●Etc.
Architecture des système à microprocesseur et microcontroleur 5
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Objectifs des systèmes à microprocesseur ?●Acquérir des entrées (logiques et/ou analogiques) représentant l'état du système●Interpreter l'état actuel et calculer l'état futur du système●Agir sur des sorties (logiques et/ou analogiques) de façon à placer le système dans le nouvel état
Les besoins : un système capable de
●Communiquer avec le monde extérieur afin de ● Récupérer l'état du système (lire des entrées),● Placer le système dans son nouvel état (écrire sur des sorties)
●Réaliser des calculs
Architecture des système à microprocesseur et microcontroleur 6
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Comment ?●La logique cablée
● Rapide mais encombrante, durée d'étude longue, difficile à maintenir
●Les circuits logiques programmables : ● Gain de place en intégrant la solution en logique cablée dans un
même boitiers.
●Les systèmes à microprocesseur ou microcontroleur :● Moins rapide mais temps d'étude réduit et maintenance plus
facile
Architecture des système à microprocesseur et microcontroleur 7
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Constitution
CPU
MemoireProgramme
(ROM)
Décodage d'@
SYSTÈME MICROPROGRAMMÉ
MemoireDe Données
(RAM)
Décodage d'@
ADRESSE
DATA Décodage d'@
Périphériqued'E/S
Décodage d'@
Périphériqued'E/S
CPU : Central Processor Unit
Architecture des système à microprocesseur et microcontroleur 8
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Constitution
La communication entre les différents éléments est assurée par :
● Un bus d'adresse unidirectionnel CPU � périphériques
● Un bus de données bidirectionnel CPU � périphériques
● Des lignes de commande (R/W, OE, etc.) unidirectionnelles CPU � périphériques
BUS : ensemble de plusieurs lignes qui changent de valeurs en même temps
Architecture des système à microprocesseur et microcontroleur 9
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
L'unité de traitement
A
PC
Registres Internes
DécodeurSéquenceurd'instructions
ADRESSECPU
MemoireDe données
Memoireprogramme
DATA
UAL
UAL : Unité Arithmétique et Logique
Accumulateur : zone mémoire interne au microprocess eur utilisée par l'UAL pour stocker les données le temps d'un calcul.
Architecture des système à microprocesseur et microcontroleur 10
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
Addition de la valeur 3 à une variable V=12 stokée en mémoire de données
V�V+3
Architecture des système à microprocesseur et microcontroleur 11
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
A
PC
DécodeurSéquenceurd'instructions
Registres Internes
DATA
CPU
MemoireDe données
Memoireprogramme
ADRESSE
12
E0E3
Architecture des système à microprocesseur et microcontroleur 12
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
A
PC
DécodeurSéquenceurd'instructions
Registres Internes
ADRESSE
DATA
CPU
MemoireDe données
Memoireprogramme
R 12
E0E3
(E0E3)
Architecture des système à microprocesseur et microcontroleur 13
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
A
PC
DécodeurSéquenceurd'instructions
Registres Internes
ADRESSE
DATA
CPU
MemoireDe données
Memoireprogramme
R12
Architecture des système à microprocesseur et microcontroleur 14
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
12
PC
DécodeurSéquenceurd'instructions
Registres Internes
ADRESSE
DATA
CPU
MemoireDe données
Memoireprogramme
12
12
Architecture des système à microprocesseur et microcontroleur 15
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
12
PC
DécodeurSéquenceurd'instructions
Registres Internes
ADRESSE
DATA
CPU
MemoireDe données
Memoireprogramme
12
3
3
Architecture des système à microprocesseur et microcontroleur 16
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
15
PC
DécodeurSéquenceurd'instructions
Registres Internes
CPU
MemoireDe données
Memoireprogramme
ADRESSE
DATA
12
Architecture des système à microprocesseur et microcontroleur 17
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
15
PC
DécodeurSéquenceurd'instructions
Registres Internes
CPU
MemoireDe données
Memoireprogramme
ADRESSE
DATA
15
Architecture des système à microprocesseur et microcontroleur 18
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Déroulement d'un programme
Pour effectuer l'opération V=V+3, le microprocesseur effectue 3 opérations :
● Charger le contenu de la RAM dans l'accumulateur A,● Additionner la valeur 3 au contenu de A et placer le résultat
dans A,● Écrire le contenu de A en mémoire RAM.
Chacune de ces opérations correspond à une instruction élémentaire du microprocesseur
Architecture des système à microprocesseur et microcontroleur 19
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Qu'est ce que c'est ?
Un microcontroleur est l'intégration sur une même puce, dans un seul boitier d'un microprocesseur et de ses périphériques.
MemoireProgramme
(ROM)Décodage d'@
MemoireDe Données
(RAM)
Décodage d'@
MICROCONTROLEUR Décodage d'@
Décodage d'@
ADRESSE
DATA
Périphériqued'E/S
Périphériqued'E/S
Microprocesseur
Architecture des système à microprocesseur et microcontroleur 20
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Sa mise en œuvre nécessite :
MemoireProgramme
(ROM)Décodage d'@
MemoireDe Données
(RAM)
Décodage d'@
MICROCONTROLEUR Décodage d'@
Décodage d'@
ADRESSE
DATA
Périphériqued'E/S
Périphériqued'E/S
Microprocesseur
ValimGND
Lignes deprogrammation
Architecture des système à microprocesseur et microcontroleur 21
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Critères de choix :
● Taille du bus de données● Taille de sa mémoire programme,● Fréquence max de fonctionnement,● Jeu d'instruction RISC ou CISC,● Périphériques disponibles,● Possibilités d 'extension mémoire
RISC : Reduce Instruction Set Computer, microcontroleur à jeu d'instruction réduit
CISC : Complex Instruction Set Computer, microcontroleur à jeu d'instruction complexe
Architecture des système à microprocesseur et microcontroleur 22
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Programmation
Le microcontroleur comprend le code machine : code binaire interprété par le décodeur d'instructions qui le divise :
● en code opération pour l'UAL,● Signaux de commandes,● valeurs des bus.
Code machine est complexe, non intuitif et très proche de la machine donc très rarement utilisé par le programmeur. Généralement une instruction en langage machine correspond à une opération élémentaire du microcontroleur.
On programme en langage évolué (C, JAVA, etc.) puis on utilise un compilateur pour traduire notre code en langage machine compris par le microcontroleur. Cela nécessite une chaine de développemnt adaptée.
Compilateur : logiciel qui traduit un programme sai si en langage évolué en langage machine
Architecture des système à microprocesseur et microcontroleur 23
Introduction Architecture des systèmesà microprocesseur Microcontrôleur
Programmation
Algorithme Langage C Assembleur Code machine en hexadécimal (binaire)
V����V+3 V=V+3 ; LDI R30, 0x33ADD R5,R30
E0E3 (1110000011100011)0E5E (0000111001011110)