Professional Documents
Culture Documents
Signal
Analogique
Fourni par un capteur
ATD
Mot
binaire
Le plan mmoire
Par dfaut:
0000h-01FFh:512 octets de registres
0800h-0BFFh: 1Ko de RAM <-- dbut de donnes temp. en 0800h
dcroissantes
0D00h-0FFFh:768 octets d'EEPROM
8000h-FFFFh:52 Ko de Flash <--dbut du programme en 8000h
dbut de la pile en C00h (SP instantane en C00h) car la pile se remplit dans le sens des adresses
Pile: sert la sauvegarde temporaire des donnes lors de l'appel d'un sous programme
Sous programme
Prog princ.
appeler sous-programme
3
finprogramme
Flash
8000h
Programme
8400h
Appeler sous programme
9000h
9001h
Sous programme
15
0
UAL
SP: pointeur de pile, fournit l'adresse de la dernire donne mmorise dans la pile
PC: pointeur de programme, donne l'adresse de l'instruction suivante
Reg d'tat: CCR regroupe des bits (drapeaux) dont la valeur est positionne en fonction du rsultat de l'opration arithmtique ou logique.
H: retenue intermdiaire
N: rsultat ngatif
Z: rsultat nul
V: dpassement
C: retenue
S,I,X: sont positionns par l'utilisateur
S: autorise l'instruction stop
I: autorise des interruptions sur maquette
X: en rserve
Format d'une instruction
{tiquette} Mnmonique {oprande 1}{oprande 2}{;commentaire}
obligatoire
indique la nature de l'instruction
Les modes d'adressage
BRA bcl reprendre l'excution du programme partir d'une tiquette qui s'appelle bcl , l'oprande l'instruction reprsente une adresse
Jeu d'instruction
1: instructions de transfert et d'changes entre registre (cf. tab 5-2)
2: instructions de lecture -criture (cf tab. 5-1)
3: instructions arithmtiques
4: instructions logiques
5: instructions permettant de raliser des boucles
Vecteur reset: chaque fois que l'on met le contrleur sous tension , il va toujours lire le contenu d'un mme emplacement mmoire, celui d'adresse FFFEh, FFFFh.
On doit mettre dans cet emplacement mmoire l'adresse du programme excuter
Interface sortie
adresse
donnes
P
Mmoire=
Programme
+
Donnes
commande
Interface sorties
Moteur
-10V, +10V
Le dialoque P-interface s'effectue via les bus d'adresse , de donnes et de commande (de la mme faon qu'avec une mmoire)
Le dialogue interface-priphrique s'effectue via des lignes d'E/S
Priph vers interface = entre
Priph vers priph= sortie
Les lignes d'E/S sont regroupes dans des ponts
Exemple: interface avec 2 points de 8bits
1) l'adressage cartographique
1) l'adressage cartographique
On a attribue une parti de l'espace mmoire disponiqble des interfaces
Les o,terfaces sont projetes dans le plan mmoire
On accde aux interfaces avec les mmes instruction que pour la mmoire
ex: LDAA port 1 le reg. A reoit le contenu du port 2
2) l'adressage indpendant
Les interfaces ont leur propre espace d'adresage
Le P utilise un signal supplmentaire pour faire la distinction entre les 2 espaces
M/IO= 1 --> accs mm.
M/IO=0 --> accs E/S (M=memory , I/O= input,output
M/IO est gnr partir de l'instruction utilise
Logique de commande: gnre des signaux de commande des portes 3 tats et des bascules
Registre de commande: accessible en criture permet l'utilisateur de dfinir sir les lignes de dialogue
avec le priphrique sont des entres ou des sorties (ex: DDRA, DDRB pour le 68hc12)
Registre d'tat: accessible en lecture . Donne des informations sur l'tat de la communication (donne mise, donne reue, priphrique prt.)
Les n bits qui forment un mme caractre sont envoys les uns la suite des autres
Les n bits qui forment un mme caractre sont envoys les uns la suite des autres
Ex: 'A': code 60h =>0110 0000
Ex de priphrique srie: souris, fax, modem, rseau
2 modes de communication possible:
- Asynchrone
- Synchrone
Mode asynchrone:
'BONJOUR' : 8 bits pour 'R': 0110 1110
8 bits pour 'U': 1001 0001
8 bits pour 'O': ..
Chaque caractre mis est form par :
- 1 bit de dpart qui permet de prvenir le rcepteur de l'arrive d'un nouveau caractre
- 8 bits qui correspondent au code du caractre= bits de donnes
- ventuellement 1 bit de parit (paire, impaire)
- 1 ou 2 bit(s) de stop.
Mode synchrone:
Les donnes forment 1 suite continue de bits sans qu'il soit possible d'identifier les limites de chaque caractre dans ce flot. Il existe juse quelques bits
de synchronisation au dpart pour synchroniser le rcepteur sur l'metteur. Avantage: + rapide inconvnient erreur si dcalage dans la lecture des bits.
Reg. De transmission = registre dcalage charg en // via le bus de donnes, dcal sous le contrle de la logique de transmission
Les bits sont mis sur la ligne mission de donnes une frquence fixe par l'horloge d'mission
On peut modifier la vitesse de transmission en envoyant les bits toutes les 1 2 4 8 16 priodes d'horloge.
l'horloge de rception regarde chaque demi-priode l'tat de la ligne rception de donnes. Ds que la ligne rception de donnes passe 0, un
dbut de communication est suppos, l'horloge vrifie qu'il s'agit bien d'un bit start en vrifiant que la ligne rception de donnes est toujours 0
aprs une demi-priode.
On rcupre la valeur des autres bits par lecture de la ligne rception chaque priode d'horloge.
Le registre d'tat
Donne des informations sur l'tat de la communication. On sait ainsi si ,
- Le registre de rception est plein
- Le registre de transmission est vide
- s'il y a une erreur de parit (s'il existe une diffrence entre le bit de parit calcul par le rcepteur partir des bits d e donnes reues et bits de
parit mis)
- s'il y a une erreur de format (la ligne n'est pas 1 au moment o le rcepteur devrait lire les bits de stop)
Le registre de commande:
Permet de dfinir le protocole de communication (vitesse, nb de bits de donnes, parit)
Les signaux de commande du modem:
Permettent d'tablir un code de poigne de main (hand-shaking)
1)RTS
2)CTS
3)mission de donnes
1)DSR
2)DTR
3)rception de donnes
Avantages:
- Pas de matriel supplmentaire
- La scrutation est synchrone avec l'excution du programme. On sait exactement combien de temps on mettra pour rpondre un vnement.
Inconvnients:
- Le temps de rponse un vnement peut tre long
- On perd du temps interroger des dispositifs qui ne demandent rien
2) La technique des interruptions
Ce sont les interfaces qui d'elles mme indiquent au P qu'elles ont besoin qu'on s'occupe d'elle par une ligne de communication spcifique appele
interruption
Prg d'interruption
______
______
2 ______
______
______
______
Fin prg d'interruption
Il faut crire autant de programmes d'interruption qu'il y a d'interruptions possibles. Les adresses de chaque programme d'interruptioin sont ranges
un endroit prcis de la mmoire table des vecteurs.
Le contrleur d'interruption regarde en permanence quelles sont les lignes d'interruption qui passent 1. ds qu'il en voit une passer 1, il envoie le
signal INTR au P et dpose sur le bus de donnes le numro de vecteur correspondant.
Le P n'a plus qu' lire le contenu de ce vecteur pour avoir l'adresse du programme d'interruption excuter.
Priorit des interruptions
La priorit des interruptions dtermine l'interruption traiter en premier lorsqu'il y a plusieurs interruptions simultanes.
Elle peut-tre dfinie par le programmeur.
Masquage des interruptions
Il est posssible de ne pas prendre en compte certaines interruptions dans certaines parties du programme par l'utilisation d'instruction ou de mots de
commande particuliers.
STI: autorise les interruptions
CLI: masque les interruptions