You are on page 1of 5

Les Microcontrleurs JC

A. Microcontrleur de type Von Neumann le 68HC11


1. Introduction
L'appellation MC 68HC11 regroupe une famille de microcontrleurs fabriqus
par l'industriel amricain Motorola. Toutes les ersions ont le m!me c"ur de
circuit #68HC11$8% Les diffrences portent essentiellement sur la quantit de
mmoire et sur le nombre d'entres&sorties disponibles. Le MC 68HC11 est un
microcontrleur 8 bits #pouant toutefois effectuer des oprations sur 16 bits% de
tec'nologie HCM()* aliment sous +,. -l est arc'itectur autour d.une unit
centrale C-)C #Complete -nstruction )et Computers% 1/+ instructions de t0pe
6812. )es modes de fonctionnement* ses multiples entres&sorties et sa facilit
d'utilisation l'ont rendu tr3s populaire dans le monde de l'lectronique
numrique.
2. c!"ma #onctionnel du 68HC11A8
1
68HC11A8
$. %escription du sc!"ma #onctionnel
$utour de -'unit centrale 68HCll proprement dite on troue tout d'abord de la mmoire. 4lle se subdiise au ma5imum
en trois blocs distincts dont la taille et la prsence arient selon les rfrences du circuit. La 6$M ou mmoire ie* de
7+6 octets au moins est tou8ours prsente. La 6(M ou mmoire morte peut !tre prsente ou absente. Lorsqu'elle est
prsente* elle peut !tre du t0pe 6(M programmable par masque #lors de la fabrication du circuit% ou du t0pe 496(M
#programmable par l.utilisateur%. :ans ce dernier cas* cette mmoire 496(M peut !tre non effa;able #programmable
une fois% ou effa;able t0pe 4496(M #programmable et effa;able lectriquement%. :ans tous les cas* cette mmoire
destine au programme ne doit pas !tre confondue aec la petite 4496(M isible sur ce s0noptique qui est destine
au5 donnes.
Cette unit centrale est entoure d'un certain nombre de ports parall3les baptiss port $ < port 4 #=* > suiant les
ersions%. -ls peuent !tre bidirectionnels ou unidirectionnels selon le cas. Certaines lignes de ces ports sont
galement partages aec d'autres ressources internes et ne sont donc pas ncessairement accessibles directement
en permanence. $insi par e5emple le port 4 est commun aec le conertisseur analogique&digital.
:es entres & sorties sries sont aussi disponibles et peuent fonctionner en mode s0nc'rone ou as0nc'rone selon
que -'on utilise la )9- ou la )C-.
?n timer ou plus e5actement un sous@ensemble timer est galement disponible. -- comporte plusieurs timers tr3s
olus ainsi qu'un accumulateur d'impulsions. ?ne 'orloge temps rel et un Ac'ien de gardeA ou C(9 #pour Computer
(perating 9roperl0% destin < sureiller le fonctionnement du microcontrleur.
?n conertisseur analogique&digital < 'uit entres compl3te cette panoplie de ressources internes d8< bien ric'e.
Toute la logique ncessaire* tant au traitement des interruptions qu'< la gnration de l''orloge est idemment
intgre dans le 68HCll dont la mise en oeure matrielle est ainsi fort simple puisque* dans de nombreu5 cas* un
quartB #gnralement 8M'B% et une cellule 6@C pour le 6eset sont les seuls composants e5ternes indispensables pour
le pilotage de cette logique.
6emarqueB aussi en partie basse du sc'ma fonctionnel que le circuit peut fonctionner selon deu5 modes C un mode
Asingle c'ipA ou circuit seul et un mode Ae5pandedA ou tendu qui lui permet alors d'adresser des circuits e5ternes
comme n'importe quel microprocesseur ordinaire. :ans ce dernier cas* les lignes des ports D et C se transforment en
lignes d'adresses et de donnes.
&. 'amille du 68HC11
4lle contient plus de /1 ersions diffrentes* aec des boEtiers allant de /1 broc'es pour le 68HCF11:G < 88 broc'es
pour le 68HCF1197. La rfrence constructeur donne sous une forme code des informations sur la tec'nologie* le
boEtier etc. ?n aper;u des caractristiques de cette famille se troue prsent sous une forme rsume dans le tableau
suiant.
(. )a*leau de classi#ication
-l e5iste plus de /1 rfrences de 68HC11. Le tableau qui suit donne un petit aper;u cette famille.
M"moires pro+rammes M"moires donn"es
,"#"rences ,-M ../,-M ,AM Commentaires
MC68HC11A8 8H +17 7+6 Dase de la famille
MC68HC11A1 @ +17 7+6 $8* aec 6(M in'ibe
MC68HC11A0 @ @ 7+6 $8* aec 6(M et 4496(M in'ibes
MC68HC811A8 8H 4496(M +17 7+6 4mulateur du $8
MC68HC11.1 17H +17 +17 $8 aec plus de mmoire
MC68HC11.1 @ +17 +17 42 aec 6(M in'ibe
MC68HC11.0 @ @ +17 42 aec 6(M et 496(M in'ibes
MC68HC211.1 17H 496(M +17 +17 42 aec 496(M pour petites sries
MC68HC11%$ /H @ 127 9as de conertisseur $&:
MC68HC211%$ /H 496(M @ 127 9as de conertisseur $&:
MC68HC11'1 @ +17 1H Dus non multiple5 et ports en plus
MC68HC11L6 16H +17 +17 $8 aec port en plus
MC68HC113( 16H @ +17 Timer et compteur supplmentaires
7
4. Microcontrleur de type Har5ard les /ICs
1. Introduction
Les microcontrleurs 9-C de la socit amricaine Microc'ip n'ont pas une aussi longue 'istoire que ceu5 d'-ntel ou de
Motorola mais cela ne les emp!c'ent pas de connaEtre un succ3s mrit en ce moment. Ce p'nom3ne s'e5plique par
leur tr3s bon rapport performance&pri5 puisqu'ils allient performance* faible coIt* facilit de mise en "ure et faible
encombrement J Certaines ersions sont proposes dans un boEtier :?$L < 'uit broc'es.
Microc'ip propose quatre familles de microcontrleurs 8 bits et une famille 16 bits. Certaines ersions e5istent en 6(M
d'autres en 4496(M* ou encore en mmoire =las'* mais toutes les familles e5istent en ersions (T9. Microc'ip a t
la premi3re socit < utiliser la tec'nologie 6-)C #6educed -nstruction )et Computer ou circuit < 8eu d'instructions
rduit% G+ instructions et une structure dite Harard dans leurs microcontrleurs. Ces innoations ont permis de
grandes aances.
:ans la structure de Harard* les instructions et les donnes sont clairement diffrencies et sont 'icules sur des
bus diffrents. $lors qu'en gnral* les microcontrleurs utilisent une arc'itecture interne dite de ,on Keumann J les
instructions et les donnes 0 transitent sur un m!me bus de donnes. Le probl3me de cet unique bus se fait sentir
lorsqu'on a besoin d'une itesse d'e5cution lee. La structure Harard permet ainsi de faire fonctionner des
programmes plus rapidement.
L'autre particularit de la famille 9-C rside dans l'utilisation d'une arc'itecture 6-)C qui contribue encore < accroEtre la
itesse d'e5cution des programmes. L'arc'itecture 6-)C s'oppose < l'arc'itecture traditionnelle dite C-)C #Comple5
-nstruction )et Computer%. Les principales caractristiques du 6-)C par rapport au C-)C sont les suiantes C
@ un petit nombre d'instructions lmentaires.
@ e5cution d'une instruction en un c0cle d''orloge instruction #qui peut !tre diffrente de l''orloge processeur%.
@ une structure de pipe line qui permet au circuit d'e5cuter une instruction et de c'arger la suiante en m!me temps.
L'arc'itecture 6-)C est au8ourd''ui utilise par les processeurs les plus puissants. (n peut citer les 9rocesseurs
)9$6C de )un* les M-9)* les 9oLer9C de Motorola* M
,oici les principales diffrences entre les familles de microcontrleurs < unit centrale 8 bits C
- 9-C17CNNN C boEtier 8 broc'es et 8eu d'instruction sur 17 ou 1/ bits
- 9-C16C+N C boEtier de 18* 71 ou 78 broc'es* 8eu d'instruction sur 17 bits
- 9-C16CNNN C conertisseur analogique&numrique intgr d'une capacit de 17 bits* boEtier de 18 < 68
broc'es* 8eu d'instruction sur 1/ bits
- 9-C1FCNNN C 8eu tendu d'instructions sur 16 bits
Les ersions < unit centrale 16 bits sont rfrencs 9-C18CNNN. 4lles prsentent un 8eu de 68 instructions toutes
e5cutables en un c0cle d''orloge.
2. .6emple 7 le tout petit 8 de c!e9 Microc!ip : le /IC 16'8&
c!"ma #onctionnel
G
$. %escription du sc!"ma #onctionnel
Le 9-C 16 =8/ de la socit Microc'ip est un micro contrleur faisant partie de la famille 6-)C # reduced instruction set
computer % G+ instructions dont les caractristiques sont itesse d 'e5cution et 8eu d 'instruction rduit.
La mmoire de programme
C'est dans cette mmoire que ous alleB AlogerA otre programme une fois compil* la caractristique essentielle de
cette mmoire est qu 'elle consere ses donnes m!me 'ors tension # 'eureusement sinon il faudrait rec'arger le
programme asseB souent... %
Le pic 16f8/ poss3de une mmoire de programme interne # prip'riques intgrs ... % de 117/ emplacements
mmoire comprenant c'acun 1/ bits # taille d 'une instruction %. Cette mmoire est du t0pe Aflas'A * c' est de l< que
ient le AfA de 16f8/...
La 6$M
Lorsque un programme AtourneA il fait souent des calculs intermdiaires par e5emple un dcomptage pour une
temporisation* pour stocOer ces calculs temporaires les micro contrleurs poss3dent de la mmoire 6$M interne qui en
cas de coupure secteur perdent bien idemment leur contenu # < ne pas confondre aec la mmoire de programme
de t0pe flas' %.
Le 9-C 16=8/ int3gre 68 octets de 6$M. (n appel galement ces emplacements mmoire des registres < usage
gnral.
L ' 4P96(M
-l arrie parfois que l 'on sou'aite mmoriser des nements surenants au cours d 'un programme en e5cution* par
e5emple une alarme. Certain micro contrleur ont la possibilit de sauegarder cet nement dans une mmoire non
olatile c'est < dire une mmoire qui consere les donnes m!me 'ors tension * un peu comme la mmoire de
programme au dtail pr3s que l 'on ne peut pas crire dans la mmoire de programme lors de l ' e5cution du
programme.
Le 9-C 16=8/ met < otre disposition 6/ octets de mmoire 4P96(M.
Le Qatc'dog
)ous ce nom trange nous allons dcourir une fonction capable de sureiller le bon fonctionnement du programme
que le micro contrleur e5cute. Le rle du Qatc'dog # ou c'ien de garde % est de ArseterA le micro contrleur si l 'on
ne remet pas < Bro priodiquement # < interalle dfinissable % un registre interne grRce < l 'instruction clrLdt # clear
Latc'dog %* si le programme tourne par e5emple dans une boucle sans fin # c'est un bug S % * il ne peut remettre < 1 le
c'ien de garde et ainsi le micro contrleur se reset afin de relancer le programme. Cette fonction est bien sIr
dsactiable au moment de la programmation du micro contrleur* c' est la directie d 'assemblage TTconfig qui dfinie
cette fonction.
Le T-M46
?n timer est un registre interne au micro contrleur * celui@ci s 'incrmente au gr3s d' un 'orloge* ce registre peut serir
par e5emple pour raliser des temporisations* ou bien encore pour faire du comptage # par l 'intermdiaire d 'une
broc'e spcifique C 6$/&T(H- %.
Le 9-C 16=8/ poss3de un timer sur 8 bits # il compte 8usqu ' < 7+6 % configurable par logiciel.
Les entres @ sorties
Uue serait un microcontrleur ne possdant pas de broc'e d 'entres@ sorties V # difficile d '0 rpondre % .
Lorsque ous enisageB de crer une application* en gnrale celle@ci commande un relais* une led ou bien tout autre
actionneur* de m!me otre programme qui tourne peut oluer selon des informations e5trieures * l 'tat d 'un contact
par e5emple ou bien d 'un interrupteur. 9our ous aideB < raliser otre application le 9-C 16=8/ poss3de 1G entres
sorties configurables indiiduellement broc'es 6$1 < 6$/ et 6D1 < 6DF

/our r"sumer ...
Le 9-C 16=8/ est un micro contrleur comportant un 8eu d 'instructions rduit
La mmoire de programme est du t0pe mmoire flas' elle peut loger un programme de 117/W1/ bits
La mmoire ram utilisateur est de 68 octets
La mmoire 4Pprom est de 6/ octets
Le pic 16f8/ poss3de un timer intgr
1G entres @ sorties configurables indiiduellement
?n Latc'dog intgr
&. 4roc!a+e du /IC16'8&
/
%escription des *roc!es
6$1 < 6$/ C broc'es d 'entre@sortie
configurables
6D1 < 6DF C broc'es d 'entre@sortie
configurables
()C1 @ ()C7 C oscillateur # quartB par
e5emple %
MCL6&,99 C broc'e de raB
,)) C 1, ,:: C X+,
(. Compl"ment d;in#ormations sur l;arc!itecture des microcontrleurs
)ype Von Neumann < 68HC11 entre autres=
La mmoire programme #6(M% contient les codes des instructions et les donnes.
$u moins deu5 c0cles d.'orloge par instruction C
L.oprande n.est pas intgr < l.instruction.
45emple C
Cette instruction occupe deu5 adresses en 6(M pour 0 loger les octets de L:$$ #code Y26% et la donne $8=.
4lle ncessite plusieurs c0cles d.'orloge C
adresse $: sur le bus d.adresse* code Y26 sur le bus de donnes
adresse $:X1 sur le bus d.adresse* aleur Y11 sur le bus de donnes
Le 8eu d.instruction de ces microcontrleurs est important C C-)C #Comple5 -nstructions )et Computer%
Le 68HC11 poss3de un 8eu comple5e de 1/+ instructions.
)ype Har5ard sur </IC16'66 entre autres=
La mmoire programme #6(M% contient les codes des instructions et des donnes de fa;on spares.
?n seul c0cle d.'orloge par instruction. >
L.oprande est intgr < l.instruction.
45emple C
Cette instruction comprend C
Le code de l.instruction #15G1% sur 6 bits
La donne 158= sur 8 bits
(n trouera donc en mmoire programme un mot de 1/ bits
111111 11111111
instruction molL constante 158=

Les mmoires instructions et donnes et les bus correspondants sont spars. Ceci permet* au m!me instant de C
e5cuter l.instruction correspondant < l.adresse courante
e5traire l.instruction suiante
La 6(M 9rogramme* registre tampon* dcodeur d.instruction constituent un Z pipeline [.
Le squencement de l.'orloge est sur / p'ases.
> 45ception C )auts et branc'ements C deu5 c0cles d.'orloge sont ncessaires.
Le 8eu d.instruction de ces microcontrleurs est rduit C 6-)C C #6educed -nstructions )et Computer %
9ar e5emple les 9-C de la srie 16=55 poss3dent un 8eu rduit < G+ instructions.
+
Instruction Registre utilis Mode dadressage Format de la donne Oprande / Donne
C'arge l.accumulateur $ aec la aleur #immdiate% He5adcimale 8=
LDA A
# $ 8F
Instruction Registre utilis Format de la donne Oprande / Donne
moe la constante #l% dans le registre #Q% He5adcimale 8=
movl
!" 8F
?ean.claude.recoules@Aanadoo.#r