Académique Documents
Professionnel Documents
Culture Documents
numériques
1
Les d’entrées/sorties
numériques
Configuration en sortie:
l’information est envoyée par le
microcontrôleur vers le monde
extérieur (actionneurs, moteurs).
Configuration en entrée: les
lignes sont initialisées par le
monde extérieur (capteurs) et
sont lues par le microcontrôleur.
Lignes configurées en
sortie
C167
Lignes configurées en
entrée
2
Organisation des ports
d’entrée/sortie
Le microcontrôleur C167 dispose
de:
• 1 port de 16 bits E/S (P2).
• 8 ports de 8 bits E/S (P0H, P0L,
P1H, P1L, P4, P6, P7, P8).
• 1 port de 15 bits E/S (P3).
• 1 port de 16 bits E (P5).
3
Configuration des
broches d’entrée/sortie
La configuration en entrée ou sortie des lignes
d’un port se fait par l’intermédiaire des
registres de direction (DP0,DP1,DP2,...)
Exemple:
Un capteur est connecté à la broche 3 du port 2 et le
programme lit l’état de ce capteur. Tant que le capteur
est à l’état 1, le programme est dans une boucle
d’attente, le programme se poursuit dès que le capteur
passe à l’état 0.
5
Configuration en sortie
Lorsque configurées en sortie :
•Une opération d’écriture sur un bit du registre
de données entraîne le positionnement de la
broche associée.
•Une opération de lecture renvoie la dernière
valeur envoyée sur le port de sortie.
Exemple:
16 leds sont respectivement connectées aux 16
broches du port 2.
Si la broche est au niveau 0, la led est éclairée.
Si la broche est au niveau 1, la led est éteinte.
Exemple:
Pour un actionneur actif à l’état 1 et
connecté à la broche 7 du port 4, la
valeur de sécurité est 0:
BCLR P4.7
BSET DP4.7
Pour un actionneur actif à l’état 0 et
connecté à la broche 7 du port 4, la
valeur de sécurité est 1:
BSET P4.7
BSET DP4.7
7
Exemple
Réaliser une calculatrice à 2 fonctions:
addition et soustraction.
Les opérations sont appliquées sur 2 valeurs,
notées valA et valB, codées sur 8 bits.
Les valeurs sont transmises au
microcontrôleur par les ports P7 et P8.
Validité Résultat
interrupteur
soustraction:
SUBB RL7,RL6
JMP cc_V,erreur ; si overflow erreur
affiche:
MOVB RH7,#10h ;
MOV P2,R7 ; valide =1 et resultat dans RL7
JMP cc_UC,boucle_lecture
erreur:
MOV R7,#0000h
MOV P2,R7 ; valide =0 et resultat =0
JMP cc_UC,boucle_lecture
main ENDP 10
prog ENDS
END
Exemple Programme
name calculatrice
$include(reg167.inc)
soustraction:
SUBB RL7,RL6
JMP cc_V,erreur ; si overflow erreur
affiche:
MOVB RH7,#10h ;
MOV P2,R7 ; valide =1 et resultat dans RL7
JMP cc_UC,boucle_lecture
erreur:
MOV R7,#0000h
MOV P2,R7 ; valide =0 et resultat =0
JMP cc_UC,boucle_lecture
main ENDP
prog ENDS
END
12
Structure de l’étage de
sortie
13
Structure de l’étage de
sortie
En montage push-pull ( état par
défaut), l’état de sortie est fixé par
l’un ou l’autre des 2 transistors.
14
Structure de l’étage de
sortie
Pour un montage drain ouvert:
le niveau 0 de la broche de sortie est
obtenu lorsque le transistor est saturé.
le niveau 1 de la broche de sortie doit
être fixé par une source extérieure
(mode haute impédance) car le
transistor est bloqué.
Pour un montage drain ouvert, il est
possible de réaliser des ET câblé entre
les sorties.
15
Niveaux logiques
16
Fonctions alternatives
des ports d’entrée/sortie.