Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 48

Introduction aux microcontrôleurs

Pr. Wade (awade@ept.sn)


Objectifs générals

Comprendre les aspects matériels d’un système embarqué


comprendre les microcontrôleurs et leur architectures
pouvoir lire un schéma électronique d’un système embarqué
pouvoir lire une datasheet de composant électronique (capteurs et
microcontrôleurs)
expliquer les applications courantes des microcontrôleurs dans les
systèmes embarqués

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 2 / 42


Architecture complete de l’AVR ATmega328P d’Atmel

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 3 / 42


Objectifs spécifiques

À la fin, vous serez en mesure de :


donner un avis professionnel sur les différentes familles de
microcontrôleurs et leurs champ d’application
d’expliquer en détail le chemin de donnée d’un microcontrôleur
définir des critères de choix d’un microcontrôleur pour une application
donnée
choisir les capteurs appropriés pour une application donnée

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 4 / 42


Organisation

3 cours, 2 TP, 1 TD
Un devoir
Une évaluation pratique
Note : 50% devoir, 50% évaluation pratique
Note évaluation pratique : TP à rendre + présence + participation

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 5 / 42


Introduction

Sommaire

1 Introduction
Définition
Historique et évolution des microcontrôleurs
Domaines d’application

2 Microprocesseurs

3 Du Microprocesseur au Microcontrôleur

4 Architecture interne d’un microcontrôleur

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 6 / 42


Introduction Définition

Qu’est ce qu’un microcontrôleur ?

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 7 / 42


Introduction Définition

Qu’est ce qu’un microcontrôleur ?

Un microcontrôleur est une système informatique (circuit intégré)


généralement utilisé pour contrôler un dispositif physique
Contrairement à un microprocesseur, il rassemble dans un seul circuit
intégré, l’ensemble d’un système à microprocesseur : CPU, RAM,
ROM, circuits d’interfaces diverses, etc.
Il se caractérise par un haut degré d’intégration et une faible
consommation électrique

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 7 / 42


Introduction Définition

Large choix

Il existe un très grand nombre de modèles de microcontrôleurs


De nombreux fabricants proposent chacun plusieurs familles de
microcontrôleurs, comptant chacune parfois des centaines de modèles
On trouve des microcontrôleurs allant du petit circuit à 6 pattes
coûtant une fraction d’euro jusqu’à des circuits comptant des
centaines de pattes et coûtant des dizaines d’euro.

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 8 / 42


Introduction Historique et évolution des microcontrôleurs

Historique et évolution des microcontrôleurs

Les premiers microcontrôleurs datent des années 1970


Texas TMS1000 et Intel 8048 (mask-ROM)

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 9 / 42


Introduction Historique et évolution des microcontrôleurs

Historique et évolution des microcontrôleurs

Les premiers microcontrôleurs datent des années 1970


Texas TMS1000 et Intel 8048 (mask-ROM)

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 9 / 42


Introduction Historique et évolution des microcontrôleurs

Historique et évolution des microcontrôleurs

Les premiers microcontrôleurs datent des années 1970


Texas TMS1000 et Intel 8048 (mask-ROM)

EPROM (avec effacement par Ultra Violets)


Intel 8748, Motorola 68705, etc.

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 9 / 42


Introduction Historique et évolution des microcontrôleurs

Historique et évolution des microcontrôleurs

Les premiers microcontrôleurs datent des années 1970


Texas TMS1000 et Intel 8048 (mask-ROM)

EPROM (avec effacement par Ultra Violets)


Intel 8748, Motorola 68705, etc.

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 9 / 42


Introduction Historique et évolution des microcontrôleurs

Historique et évolution des microcontrôleurs

Les premiers microcontrôleurs datent des années 1970


Texas TMS1000 et Intel 8048 (mask-ROM)

EPROM (avec effacement par Ultra Violets)


Intel 8748, Motorola 68705, etc.

EEPROM dès les PIC 16c84 (en 1993)


9

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 9 / 42


Introduction Historique et évolution des microcontrôleurs

Historique et évolution des microcontrôleurs


Les premiers microcontrôleurs datent des années 1970
Texas TMS1000 et Intel 8048 (mask-ROM)

EPROM (avec effacement par Ultra Violets)


Intel 8748, Motorola 68705, etc.

EEPROM dès les PIC 16c84 (en 1993)

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 9 / 42


Introduction Historique et évolution des microcontrôleurs

Largeur du bus de données

8 bits
PIC16F877A (Microchip)
ATmega328P (Atmel)
16 bits
ST10 (STMicroelectronics)
MSP430 (Texas Instrument)
32 bits
STM32F407IGT6 (STMicroelectronics)
Motorola 68020 (Motorola)

10

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 10 / 42


Introduction Domaines d’application

Où les trouve-t-on ?

Appareils ménagers (fours, micro-ondes, machines à laver, etc.)


Appareils numériques (appareils photo, etc.)
Transport (voitures, avions, etc.)
Médecine (respirateurs artificiels, tensiomètres, etc.)
Contrôle de processus industriels (usines, robots, etc.)
Systèmes d’alarme (montres, radios réveils, etc.)
etc.

11

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 11 / 42


Microprocesseurs

Sommaire

1 Introduction

2 Microprocesseurs
Architectures
Unités Fonctionnelles
Jeu d’instructions

3 Du Microprocesseur au Microcontrôleur

4 Architecture interne d’un microcontrôleur

12

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 12 / 42


Microprocesseurs Architectures

Architecture d’un microprocesseur

13

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 13 / 42


Microprocesseurs Unités Fonctionnelles

Unités Fonctionnelles

La CPU (Central Processing Unit) regroupe trois modules :


L’UAL (Unité Arithmétique et Logique)
Réalise les opérations arithmétiques (additions, soustractions, etc.) et
logiques (ET, OU, etc.)
Les registres
Stockent les données en cours de traitement
L’unité de commande (UC)
Séquenceur (logique de contrôle) : régir le séquencement de l’ensemble
du système en gérant les signaux de commande et de contrôle,
l’occupation des bus d’adresse et de données
Décodeur : chercher, décoder et exécuter les instructions

14

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 14 / 42


Microprocesseurs Unités Fonctionnelles

Les liaisons entre unités (bus)

Les communications entre l’unité centrale (CPU) et les autres modules


se font par l’intermédiaire de bus
3 types de bus :
Le bus de commande assure la synchronisation des opérations du
système
Transporte les signaux de contrôle entre UC et autres modules
Le bus de données transmet les données échangées par différents
modules
Bidirectionnel (lecture, écriture)
Format des données (8,16, 32-bit)
Le bus d’adresses sert à sélectionner la source ou la destination des
données
Unidirectionnel
Transporte des adresses, sa largeur détermine la capacité d’adressage
Ex : 16-bit 65536 données
15

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 15 / 42


Microprocesseurs Jeu d’instructions

Jeu d’instructions

Ensemble d’opérations élémentaires réalisables par un CPU


Arithmétiques : addition, soustraction, multiplication, division
Logique : ET, OU, NON, NAND, Comparaison, Décalage etc.
Transfert de données : charger ou sauver en mémoire
Contrôle de séquence : saut/branchement etc.
Deux classes de processeurs
CISC : Complex Instruction Set Computer (Intel, AMD, etc.)
RISC : Reduced Instruction Set Computer (M1, Sun, MIPS, etc.)

16

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 16 / 42


Du Microprocesseur au Microcontrôleur

Sommaire

1 Introduction

2 Microprocesseurs

3 Du Microprocesseur au Microcontrôleur
Mémoires de programme
Mémoires de donnée
Architecture de la mémoire
Périphériques intégrés

4 Architecture interne d’un microcontrôleur

17

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 17 / 42


Du Microprocesseur au Microcontrôleur

Du Microprocesseur au Microcontrôleur

18

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 18 / 42


Du Microprocesseur au Microcontrôleur Mémoires de programme

Mémoires de programme

Sont des mémoires mortes (ROM : Read Only Memory) non volatiles
et à lecture seule.
Contiennent les instructions du programme + données fixes
(permanentes).
Sont programmées au moyen d’un matériel spécifique et d’une
procédure particulière
Sont des mémoires qui perdurent après arrêt de l’alimentation

19

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 19 / 42


Du Microprocesseur au Microcontrôleur Mémoires de programme

Types et caractéristiques des mémoires de programme (1)

ROM (Read Only Memory)


Contenu programmé lors de sa fabrication, Coût faible
PROM (Programmable ROM)
Très peu utilisée
Temps d’accès très court (20ns) mais Capacité limitée (16ko)
OTP (One Time PROM)
PROM programmable une seule fois par le développeur en faisant
sauter des fusibles.

20

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 20 / 42


Du Microprocesseur au Microcontrôleur Mémoires de programme

Types et caractéristiques des mémoires de programme (2)

EPROM ou UVPROM (Erasable PROM)


Programmable électriquement et effaçable par effet photoélectrique
(exposition aux ultraviolets à travers une fenêtre de quartz).
Temps d’accès de 35 à 250 ns, Capacité de 8ko à 1Mo, Alimentation
de 3.3V ou 5V.
Avantage : programmable à nouveau.

21

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 21 / 42


Du Microprocesseur au Microcontrôleur Mémoires de programme

Types et caractéristiques des mémoires de programme (3)

EEPROM (Electricaly EPROM)


Programmable et effaçable électriquement octet par octet sous la
tension d’alimentation normale.
"Coût élevé", Capacité jusqu’à 256ko (sur les PIC),
Utilisée pour stocker des données qui sont modifiées de temps en
temps.
microcontrôleur AVR ATmega328P d’Atmel (arduino uno) en est doté
de 1 ko

22

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 22 / 42


Du Microprocesseur au Microcontrôleur Mémoires de programme

Types et caractéristiques des mémoires de programme (4)

Mémoire flash
EEPROM plus rapide et dont l’effacement est plus global (total ou par
bloc).
Temps d’accès (60 à 200 ns), Temps de programmation (100 µs par
octet), Temps d’effacement global (1s).
Coût "moins élevé"
L’ATmega328P en est doté de 32 ko de mémoire flash

23

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 23 / 42


Du Microprocesseur au Microcontrôleur Mémoires de donnée

Mémoires de donnée

Sont des :
Mémoires vives (RAM : Random Access Memory) volatiles, à accès
aléatoire et assez rapides (quelques ns).
SRAM, DRAM
Mémoires mortes (en général EEPROM) dont la lecture est assez
rapide (des ns) et l’écriture assez lente (des ms).
Contiennent les données temporaires.
Sont de petites tailles dans les microcontrôleurs.
L’ATmega328P possède seulement 2 ko de SRAM

24

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 24 / 42


Du Microprocesseur au Microcontrôleur Architecture de la mémoire

Architecture de la mémoire

25

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 25 / 42


Du Microprocesseur au Microcontrôleur Architecture de la mémoire

Architecture de la mémoire

La mémoire peut être vue comme :


un tableau de n lignes de p bits
une suite de n mots de p bits.
Le numéro de ligne d’un mot définit son adresse :
adresse du 1er mot = 0, adresse du 2ème = 1, etc.
adresse du dernier= n-1
Les mots sont en général des octets, soit p = 8 : on dit que l’unité
adressable est l’octet.

26

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 26 / 42


Du Microprocesseur au Microcontrôleur Architecture de la mémoire

Capacité mémoire

Définition
La capacité mémoire correspond au nombre de mots qu’elle peut stocker,
c’est un nombre d’octets.

Capacité de stockage
1 kilo-octets ou 1 ko = 210 octets
1 mega-octets ou 1 Mo = 220 octets
1 giga-octets ou 1 Go = 230 octets

27

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 27 / 42


Du Microprocesseur au Microcontrôleur Architecture de la mémoire

Exercice

On considère une mémoire de huit mots de quatre octets. L’unité


adressable est l’octet.
Quelle est la capacité de cette mémoire ?
Donner la largeur des nappes de fils données et adresse ?

28

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 28 / 42


Du Microprocesseur au Microcontrôleur Périphériques intégrés

Périphériques intégrés

Sont constitués en général de :


Temporisateur (timer) : un micocontrôleur peut comprendre 1 ou
plusieurs timers.
Convertisseur analogique-numérique (CAN)
Chien de garde (Watchdog Timer)
Interfaces de communication (SPI, I2C (TWI), UART (USART),etc.)

29

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 29 / 42


Du Microprocesseur au Microcontrôleur Périphériques intégrés

Les timers

Réalise les fonctions suivantes :


Génération d’un signal périodique à l’aide de compteur
Temporisation (mesurer des durées ou fréquences)
Comptage d’événements, etc.
Possède des registres de configuration
L’ATmega328P d’Atmel possède 3 timers

30

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 30 / 42


Du Microprocesseur au Microcontrôleur Périphériques intégrés

Convertisseur analogique-numérique (CAN)

Transforme la tension analogique sur une entrée en un nombre binaire


Possède plusieurs entrées multiplexées accessibles via des pins des
ports
Possède en général 2 registres :
Registre de données : Résultat de conversion
Registre de contrôle : Lancer et surveiller la conversion
L’ATmega328P d’Atmel possède un convertisseur analogique
numérique 10 bits

31

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 31 / 42


Du Microprocesseur au Microcontrôleur Périphériques intégrés

Watchdog Timer

Un Watchdog Timer est un dispositif de sécurité qui redémarre


automatiquement le système si le logiciel s’exécute de manière
incorrecte ou se bloque, assurant ainsi que le système continue de
fonctionner correctement.
Mode de fonctionnement :
Activer le watchdog et précharger son compteur.
Le rafraîchir régulièrement (dans la bonne partie du programme).
Un reset est généré si le compteur n’est pas réarmé avant qu’il
n’atteigne la valeur 0

32

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 32 / 42


Du Microprocesseur au Microcontrôleur Périphériques intégrés

Interfaces de communication (UART/USART)

Les microcontrôleurs intègrent souvent plusieurs interfaces de


communication pour échanger des données avec d’autres microcontrôleurs,
ordinateurs ou périphériques
UART (Universal Asynchronous Receiver/Transmitter) : pour la
communication série asynchrone.

33

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 33 / 42


Du Microprocesseur au Microcontrôleur Périphériques intégrés

Interfaces de communication (SPI)

Les microcontrôleurs intègrent souvent plusieurs interfaces de


communication pour échanger des données avec d’autres microcontrôleurs,
ordinateurs ou périphériques
SPI (Serial Peripheral Interface) : une interface série rapide pour la
communication avec des périphériques tels que des écrans LCD ou des
cartes mémoire.

34

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 34 / 42


Du Microprocesseur au Microcontrôleur Périphériques intégrés

Interfaces de communication (I2C)

Les microcontrôleurs intègrent souvent plusieurs interfaces de


communication pour échanger des données avec d’autres microcontrôleurs,
ordinateurs ou périphériques
I2C (Inter-Integrated Circuit) : un bus série pour connecter des circuits
intégrés utilisant deux fils.

35

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 35 / 42


Architecture interne d’un microcontrôleur

Sommaire

1 Introduction

2 Microprocesseurs

3 Du Microprocesseur au Microcontrôleur

4 Architecture interne d’un microcontrôleur


Architecture Von Neumann
Architecture Harvard

36

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 36 / 42


Architecture interne d’un microcontrôleur

Architecture d’un microcontrôleur

Tous les microcontrôleurs utilisent l’une des 2 architectures nommées


Harvard et Von Neumann
Elles représentent les différentes manières d’échange de données entre
le CPU (microprocesseur interne) et la mémoire

37

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 37 / 42


Architecture interne d’un microcontrôleur Architecture Von Neumann

Architecture Von Neumann

L’architecture est basée sur un bus de données unique


Celui-ci véhicule les instructions et les données
Employée par la plupart des microcontrôleurs actuels
INTEL80XX, Motorola HC05, HC08 et HC11, ou ZILOG Z80, etc.

38

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 38 / 42


Architecture interne d’un microcontrôleur Architecture Von Neumann

Exemple du Motorola HC05

39

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 39 / 42


Architecture interne d’un microcontrôleur Architecture Harvard

Architecture Harvard

L’architecture HARVARD utilisée par les microcontrôleurs PIC, AVR,


etc. est basée sur deux bus de données
Un bus est utilisé pour les données et un autre pour les instructions
Le CPU peut lire une instruction (en ROM) et accéder à la mémoire
de données (en RAM) en même temps
Plus rapide que le modèle Von Neumann, mais structure plus complexe

40

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 40 / 42


Architecture interne d’un microcontrôleur Architecture Harvard

Architecture complete de l’AVR ATmega328P d’Atmel

41

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 41 / 42


Architecture interne d’un microcontrôleur Architecture Harvard

Les composants de l’arduino uno

42

Pr. Wade (awade@ept.sn) Capteurs et microcontrôleurs ISEP 2024 42 / 42

Vous aimerez peut-être aussi