Professional Documents
Culture Documents
ENSA4 GE
2
En 1500 avant Jesus- Christ (J. C.): le boulier (utilisé encore
dans certain pays)
3
C’est quoi un système informatique?
Est-ce que l’utilisateur utilise directement un ordinateur
Utilisateur Ordinateur
C’est quoi un système informatique?
•Système d’exploitation
•ordinateur
Utilisateur Ordinateur
C’est quoi un système informatique?
C’est un ensemble des
moyens informatiques et de
télécommunication ayant pour finalité
d'élaborer, traiter, stocker, acheminer,
présenter ou détruire des données.
Arithmetic
Logic
Unit
MEMOIRE UNITE UNITE
Programme Stockage DE D’ENTREE
Registres Stockage Donnée SORTIE
Historique
3
Problème 3 : si les trois interrupteurs sont actionnés, L1
s'allume pendant cinq secondes puis se met à clignoter. Si
seuls I1 et I3 (mais pas I2) sont actionnés, L1 s'allume et L2
clignote pendant 10s. Si I1 et I2 sont actionnés, L1 et L3
clignotent en phase alors que L2 clignote en opposition.
• Atmel
• Dallas Semiconductor
• Freescale Semiconductor
• Hitachi Semiconductor
• Intel
• Microchip
• National Semiconductor
• Renesas
• STMicro
• Texas Instruments
• Zilog
Domaines d’applications
Automates programmable: Electroménager
domotique
-contrôle -Cuisinière, four micro- onde
-supervision -Lave vessaille
-régulation des processus -…
--Robotiques
- Contrôle du Traffic …
Applications
Médicales
Transports Télécommunication
Avantages inconvénient
ARCHITECTURE DES MICROPROCESSEURS
17
• L'architecture RISC :"ordinateur à jeu d'instructions
réduit")
18
On utilise un microcontrôleur pour construire des
applications compactes, cependant la taille du
programme, le nombre de données traitées et le nombre
de liaisons possibles avec la périphérie sont limités par
construction.
Un choix pertinent du microcontrôleur doit être effectué.
Language utilisé
Assembleur
C++
Java
Other
20
Microcontrôleurs
• Counter/Timer system
• A/D converter
• Parallel I/Os
• Expansion bus
• Serial communication
21
Microcontrôleurs
Microcontrôleurs
Motorola 68HC11
24
Motorola 68HC11
Produit de la famille 68HC11
26
Affectations des broches du 68HC11E
27
Affectations des broches du 68HC11F1
Description générale
Synoptique interne de base:
Mémoires :
- RAM de 256 octets +
- ROM ( programme) +
- EEPROM ( données)
Ports parallèles :
- A, B, C, D et E
bidirectionnels ou unidirectionnels.
Ports partagées :
Exemple : Port E = entrée du CAN.
Entrées séries :
- Synchrone (SPI). Asynchrone (SCI)
Timer composé de :
- Plusieurs timers à usage général
- 1 accumulateur d'impulsions,
- Horloge temps réel
- Watchdog surveiller le µC.
- 1 CAN 8 bits à 8 entrées.
- Traitement d’Interruptions et
Horloge.
Description générale
Signaux disponibles :
* 2 Entrées d’Interruption : /IRQb, /XIRQ
* EXTAL et XTAL : connexion Quartz, RC ou Horloge externe
* Entrée-Sortie /RESET. E: Raz, S: Défaut interne détecté par le WD)
* VRL et VRH : Références basse et haute du CAN
* VRL et VRH : Références basse et haute du CAN
* MODA et MODB : sélection des modes de fonctionnement
- MODA, MODB=0,1 Mode Circuit seul normal (bit SMOD=0 du Registre HPRIO)
- MODA, MODB=1,1 Mode Etendu normal (bit SMOD=0 du Registre HPRIO)
- PA0 à PA2 : Entrées Port A, ou Entrées de capture IC3 à IC1 du timer.
* PA0 à PA7 (partagées avec le Timer) :
- PA0 à PA2 : Entrées Port A, ou Entrées de capture IC3 à IC1 du timer.
- PA3 à PA6 : Sorties Port A ou Sorties de comparaison OC1 à OC5 du timer.
- PA7 : E/S Port A ou Entrée de capture ou Sortie de comparaison ou Entrée
d'accumulateur d'impulsions.
31
Les modes d ’utilisation
• Le 68hc11 peut être utilisé dans plusieurs
configurations qui conditionnent ses
performances en terme :
– de mémoires
– de périphériques
• Il y a 4 modes d ’utilisation
– Monochip
– Étendu Multiplexé
– Bootstrap
– Test
32
Les modes d ’utilisation - monochip
• En mode monochip, le composant est utilisé
seul.
• Il doit donc posséder: 68HC11
– de la mémoire programme (ROM)
– et de la mémoire donnée (RAM)
• exemple : 68HC811E2 E/S
– 2k octets d ’EEPROM
– 256 octets de RAM
Périphérie
33
Les modes d ’utilisation - monochip
HC11
E2
ALIM. 5V
34
Les modes d ’utilisation - monochip
Bus de données
Bus d ’adresses 36
Les modes d ’utilisation - étendu
PERIPH
RAM ou ROM
E/S
68HC11F1
I/F SERIE
37
Les modes d ’utilisation - bootstrap
• En mode bootstrap le 68hc11 est utilisé
normalement seul.
• Dans ce mode le programme applicatif (ROM) est
téléchargé dans une EEPROM interne par la voie
de communication série asynchrone.
• Un logiciel interne en ROM gère le mode
bootstrap
I/F RS232
68HC11 Ordinateur PC
EEPROM
Rom boot
38
Les modes d ’utilisation - test
• Ce mode est réservé à des opérations
particulières liées au test en fin de fabrication
du composant
• Il permet l ’accès à toutes les fonctionnalités
du 68HC11 notamment au registre CONFIG
• Il est donc délicat d ’utilisation !!
39
Description générale
Signaux disponibles :
* PC0 à PC7 :
- Mode Circuit seul : E/S parallèles.
- Mode Etendu : lignes des données et/ou 8 bits de poids faible
d'adresses.
* PB0 à PB7 :
- Mode Circuit seul : Sorties Port B.
- En mode étendu : 8 bits de poids forts d'adresses.
* PD0 à PD5 : E/S Port D ou lignes des ports série de la SPI et de SCI.
15 Index X 0 IX
15 Pointeur de pile SP 0 SP
15 Compteur ordinal PC 0 PC
Accumulateurs A, B et D
Compteur de programme
D7 D6 D5 D4 D3 D2 D1 D0
Condition Code Register
S X H I N Z V C (CCR)
48
L'unité centrale
Registre d'état: Condition Code Register (CCR)
7 6 5 4 3 2 1 0
S X H I N Z V C
Zero
Half Carry
Negative
I-Interrupt Mask
49
L'unité centrale
Registre d'état: Condition Code Register (CCR)
7 6 5 4 3 2 1 0
S X H I N Z V C
Zero
Half Carry
Negative
I-Interrupt Mask
50
L'unité centrale
Registre d'état: Condition Code Register (CCR)
N (Negative) bit
S X H I N Z V C
Zero
Half Carry
Negative
I-Interrupt Mask
52
L'unité centrale
Registre d'état: Condition Code Register (CCR)
Z (Zero) bit
• Z = “1” -le resultat de la dernière opération egal zero.
- accumulateur contient = $00
Exemple
(1) LDAA #$00 ; Z = “1”, ACCA = 0
(2) LDAB #$01 ; Z = “0”, ACCB > 0
53
L'unité centrale
Registre d'état: Condition Code Register (CCR)
7 6 5 4 3 2 1 0
S X H I N Z V C
Zero
Half Carry
Negative
I-Interrupt Mask
54
L'unité centrale
Registre d'état: Condition Code Register (CCR)
C (Carry) bit
• C =“1” - addition ou sustraction a eu une retenue.
55
L'unité centrale
Registre d'état: Condition Code Register (CCR)
7 6 5 4 3 2 1 0
S X H I N Z V C
Zero
Half Carry
Negative
I-Interrupt Mask
56
L'unité centrale
Registre d'état: Condition Code Register (CCR)
V (Overflow) bit
57
L'unité centrale
Registre d'état: Condition Code Register (CCR)
7 6 5 4 3 2 1 0
S X H I N Z V C
Zero
Half Carry
Negative
I-Interrupt Mask
58
L'unité centrale
Registre d'état: Condition Code Register (CCR)
H (Half-carry) bit
• H =“1” - un 8-bit addition, indique une retenue
du bit-3 au bit-4.
• H =“0” - un 8-bit addition, , n’indique pas une
retenue du bit-3 au bit-4.
Example:
1+1 indique une
retenue
LDAA #% 0011 1000
ADDA #% 0011 1010 ; H=“1”
WAI ; (aprés additon)
59
L'unité centrale
Registre d'état: Condition Code Register (CCR)
7 6 5 4 3 2 1 0
S X H I N Z V C
Zero
Half Carry
Negative
I-Interrupt Mask
60
L'unité centrale
Registre d'état: Condition Code Register (CCR)
Commande du Registere
I Interrupt Mask
X XIRQ mask
Note:
* Décalages et rotations.
Fonction Mnémonique Etend Ind. X Ind. Y Inéh
Décalage logique à droite LSR 74 64 18 64
Décalage logique à droite sur A LSRA 44
Décalage logique à droite sur B LSRB 54
Décalage logique à droite sur D LSRD 04
Rotation à droite ROL 79 69 18 69
Rotation à droite sur A ROLA 49
Rotation à droite sur B ROLB 59
Rotation à gauche ROR 76 66 18 66
Rotation à gauche sur A RORA 46
Rotation à gauche sur B RORB 56 65
Jeu d'instructions
66
Jeu d'instructions
67
Jeu d'instructions
Seul les 3 bits C, I, V du registre d'état peuvent être directement mis à 0 ou à 1. Les instructions
TAP et TPA permettent de compléter les actions possibles sur les bits de CCR.
Pour les indicateurs de signe N et de zéro Z il est possible d'utiliser des instructions qui ont une
action directe sur leurs valeurs.
Par exemple :
* l'instruction CLRB met l'indicateur N à 0 et l'indicateur Z à 1
* l'instruction LDAA #$80 permet de mettre N à 1 et Z à 0. 68
Jeu d'instructions
4- Instructions de contrôle du programme :
* Sauts
Fonction Mnémonique Dir Etend Ind. X Ind. Y Inéh
Saut JMP 7E 6E 18 6E
* Branchements.
Fonction Mnémonique Rel Dir Ind. X Ind. Y Commentaire
Branche si négatif BMI 2B N=1?
Branche si non nul BNE 26 Z=0?
Branche si positif ou nul BPL 2A N=0?
Branche toujours BRA 20
Branche si bits à 0 BRCLR 13 1F 18 1F
Branche jamais BRN 21
Branche si bits à 1 BRSET 12 1E 18 1E
Branche si pas de dépassement BVC 28 V=0?
Branche si dépassement BVS 29 V=1?
69
Jeu d'instructions
4- Instructions de contrôle du programme :
* Autres instructions.
Fonction Mnémonique Inéh
Pas d'opération NOP 01
Arrête l'horloge STOP CF
Test (réservée au mode test) TEST 00
70
Modes d'adressage
Symboles utilisés :
71
Modes d'adressage
2- Adressage immédiat :
* Opérande Valeur immédiate qui suit le mnémonique.
Exemples
72
Modes d'adressage
3- Adressage direct :
73
Modes d'adressage
4- Adressage étendu :
74
Modes d'adressage
5- Adressage indexé :
2 "Sous-modes"
75
Modes d'adressage
76
Modes d'adressage
6. Adressage relatif :
79
Modes d'adressage
6. Adressage relatif :
Autres exemples :
TEST LDAA PORTC * Lecture du port C
BMI TEST * Continu la lecture si PC7 = 1
80
Modes d'adressage
2 "Sous-modes"
- Mode "Bit Set Clear" Positionnement de bit,
- Mode "Bit test and branch" Test de bit et branchement.
81
Modes d'adressage
Exemples :
BCLR PORTB %00110001 * Mise à 0 de bits 0, 4 et 5 de PORTB
BSET 2,X %00001001 * Mise à 1 de b0 et b3 du contenu de (X+2)
82
Modes d'adressage
Exemples :
BRCLR TFLG1 $80 BOUCLE * Si b7 de TFLG1=0 aller à BOUCLE
BRCLR 0,Y %01000000 WAIT * OU
BRCLR ,Y $40 WAIT * Si b6 de case (pointée par Y)=0 Aller à
83
WAIT