8/17/2019 TEMA_05 Puertos Paralelos
1/48
Tema 5
PUERTOS PARALELOS
8/17/2019 TEMA_05 Puertos Paralelos
2/48
Microcontroladores: Tema 5
2
Puertos Paralelos
• Los dispositivos embebidos están diseñados parainteractuar con el medio ambiente
• La interacción no puede llevarse a cabo en forma
directa con el CPU por diferencias en el tipo deinterfaz eléctrica y lógica.
• La interacción se realiza mediante lo ue seconoce como dispositvos periféricos
• Los periféricos se comunican con el CPU como sise tratara de una memoria o registros.
8/17/2019 TEMA_05 Puertos Paralelos
3/48
Microcontroladores: Tema 5
3
Puertos Paralelos
CPU
!ecodificador
!e
!irecciones
!ispositivo
Periférico
!ispositivo
Periférico
C" C"
#U$ !" !%&'$
()' ()'
(nterrupción
8/17/2019 TEMA_05 Puertos Paralelos
4/48
Microcontroladores: Tema 5
4
$incronización de CPU
• Para obtener datos válidos de un periférico deentrada* el CPU se debe de asegurar ue el
periférico tiene datos válidos. "+isten dos
métodos , -uestreo o polling/* el CPU revisa periodicamente
una bandera/ ue puede ser un bit o grupo de ellosmapeado/ en un registro o localidad de memoria ueindican ue 0ay información disponible.
, (nterrupción* el contador de programa brinca a unadirección especial asociada al periférico* en esadirección se coloca código para leer o procesar la
información.
8/17/2019 TEMA_05 Puertos Paralelos
5/48
Microcontroladores: Tema 5
5
$incronización de CPU
• Para los periféicos de salida se emplean losmismos métodos pero lo ue se verifica es si el
periférico puede aceptar nueva información para
transferir al e+terior.
• "l P(C12 puede utilizar ambos métodos
8/17/2019 TEMA_05 Puertos Paralelos
6/48
Microcontroladores: Tema 5
6
Puertos paralelos en P(C12345677
• % 2bits 8%9:;
• # 2bits 8#9:;
• C 5bits 8C9:7*;*<
• ! 2bits 8!;:8!9
• " 4bits 8"=:8"9
8/17/2019 TEMA_05 Puertos Paralelos
7/48
Microcontroladores: Tema 5
7
Puertos
• &ienen asociados lossiguientes registros básicos
, &8($+ define la dirección>entrada o salida?
, P'8&+ lee los niveles devolta@e en las terminale
, L%&+ es el latc0/ desalida
, %A$"L+ selecciónanálogica
, + B %* #*C*!*">1? Ao considera otros periféricos
8/17/2019 TEMA_05 Puertos Paralelos
8/48
Microcontroladores: Tema 5
8
Puerto %
8/17/2019 TEMA_05 Puertos Paralelos
9/48
Microcontroladores: Tema 5
9
Puerto %
8/17/2019 TEMA_05 Puertos Paralelos
10/48
Microcontroladores: Tema 5
10
Puerto %
cont..
8/17/2019 TEMA_05 Puertos Paralelos
11/48
Microcontroladores: Tema 5
11
Para el resto de los puertos revisar
La 0o@a de datos
Pag 1=5 >sección ()' Ports?0ttp:))1.microc0ip.com)donloads)en)!evice!oc)=9
8/17/2019 TEMA_05 Puertos Paralelos
12/48
Microcontroladores: Tema 5
12
%natomDa de un puerto de salida
ECC
FA!
()' P(A
SALIDA
ESCRITURA
'1'
'0'
I SOURCE
I SINK
A PUERTO
R S O U R C E
VOH
R S I N K VOL
P
N
()' P(A
ECC
FA!
ESCRITURA A PUERTO
8/17/2019 TEMA_05 Puertos Paralelos
13/48
Microcontroladores: Tema 5
13
(nterfaz con L"!Gs
8/17/2019 TEMA_05 Puertos Paralelos
14/48
Microcontroladores: Tema 5
14
(nterfaz con L"!GsECC
FA!
()' P(A
SALIDA
ESCRITURA
'1'
A PUERTO
R S O U R C E
VOH
R S I N K
LED1
RL
L"!
FA!
+
-
V
ILE!
ILE!
ECC B (L"!H8$'U8C" I (L"!H8L I E3
(L"! B >ECCJE3?)>8$'U8C"I8L?
(L"! B >5EJ7E?)>29I4;9? B 5m%
0ttp:)).vis0ay.com)docs)2=99
8/17/2019 TEMA_05 Puertos Paralelos
15/48
Microcontroladores: Tema 5
15
(nterfaz con L"!Gs
ECC B E3 I (L"!H8L I 8$(A6 H(L"!
(L"! B >ECCJE3?)>8$(A6 I8L?
(L"! B >5EJ7E?)>72I4;9? B
8/17/2019 TEMA_05 Puertos Paralelos
16/48
Microcontroladores: Tema 5
16
!isplay de ; segmentos
8/17/2019 TEMA_05 Puertos Paralelos
17/48
Microcontroladores: Tema 5
17
g
a
b
d
ce
f
dp
-CL8)EPP)8"= 1
8%9)%A9)C17(A9J7
8%1)%A1)C17(A1J=
8%7)%A7)E8"3J)CE8"3)C7(AI4
8%=)%A=)E8"3I)C1(AI5
8%4)&9C6()C1'U&<
8%5)%A4)$$)KLE!(A)C7'U&;
8"9)8!)%A5 2
8"1)8)%A< M
8"7)C$)%A; 19
E!! 11
E$$ 17
'$C1)CL6(A)8%;1=
'$C7)CL6'U&)8%<14
8C9)&1'$')&1=C6(15
8C1)&1'$()CCP71<
8C7)CCP1)P1%1;
8C=)$C6)$CL12
8!9)P$P9 1M
8!1)P$P1 79
8!7)P$P7 71
8!=)P$P= 77
8C4)$!()$!%7=
8C5)$!'74
8C
8/17/2019 TEMA_05 Puertos Paralelos
18/48
Microcontroladores: Tema 5
18
#uffer
8/17/2019 TEMA_05 Puertos Paralelos
19/48
Microcontroladores: Tema 5
19
-ane@o de multiples digitos
8/17/2019 TEMA_05 Puertos Paralelos
20/48
Microcontroladores: Tema 5
20
-ultiple+ion
-CL8)EPP)8"= 1
8%9)%A9)C17(A9J7
8%1)%A1)C17(A1J=
8%7)%A7)E8"3J)CE8"3)C7(AI4
8%=)%A=)E8"3I)C1(AI5
8%4)&9C6()C1'U&<
8%5)%A4)$$)KLE!(A)C7'U&;
8"9)8!)%A5 2
8"1)8)%A< M
8"7)C$)%A; 19
E!! 11
E$$ 17
'$C1)CL6(A)8%;1=
'$C7)CL6'U&)8%<14
8C9)&1'$')&1=C6(15
8C1)&1'$()CCP71<
8C7)CCP1)P1%1;
8C=)$C6)$CL12
8!9)P$P9 1M
8!1)P$P1 79
8!7)P$P7 71
8!=)P$P= 77
8C4)$!()$!%7=
8C5)$!'74
8C
8/17/2019 TEMA_05 Puertos Paralelos
21/48
Microcontroladores: Tema 5
21
-ultiple+ion
SE"#ENTOS a-$!I"ITO 5
SE"#ENTOS a-$!I"ITO 4
SE"#ENTOS a-$!I"ITO 3
SE"#ENTOS a-$!I"ITO 0
SE"#ENTOS a-$!I"ITO 5
R ! 6 % R ! 0
R & 5
R & 4
R & 3
R & 0
' 1(50 )e$
8/17/2019 TEMA_05 Puertos Paralelos
22/48
Microcontroladores: Tema 5
22
%natomDa de una entradaTDO
ECC
FA!
LECTURA A PUERTO
ECC
FA!
()' P(A
IIL
* !
CLK
R P U L L
SOLO PORT&
IIH
()' P(A
8/17/2019 TEMA_05 Puertos Paralelos
23/48
Microcontroladores: Tema 5
23
Eolta@es de entrada
1
9
E(Kma+
E(Kmin
ElLma+
E(Lmin
8/17/2019 TEMA_05 Puertos Paralelos
24/48
Microcontroladores: Tema 5
24
Eolta@es de entrada
8/17/2019 TEMA_05 Puertos Paralelos
25/48
Microcontroladores: Tema 5
25
Eolta@es de entrada
E!!I9.=E
7E
9.2E
E$$J9.=E
1
9
8/17/2019 TEMA_05 Puertos Paralelos
26/48
Microcontroladores: Tema 5
26
(nterfaz a interruptoresECC
FA!
()' P(A E
4.7K
ECC
S1
FA!
PullJup
8/17/2019 TEMA_05 Puertos Paralelos
27/48
Microcontroladores: Tema 5
27
(nterruptores en tar@eta
8/17/2019 TEMA_05 Puertos Paralelos
28/48
Microcontroladores: Tema 5
28
Capacidad de corriente en la entradaECC
FA!
()' P(A
IIK
IIKVPORT
FA!
E
8/17/2019 TEMA_05 Puertos Paralelos
29/48
Microcontroladores: Tema 5
29
8esistencia de protección en
entrada
PROT
ECC
FA!
()' P(A
IIK
IIKVPORT
FA!
E
8/17/2019 TEMA_05 Puertos Paralelos
30/48
Microcontroladores: Tema 5
30
Protecciones en la entrada
ECC
FA!
()' P(A
1K
E
4.7K
ECC
S1
FA!
8/17/2019 TEMA_05 Puertos Paralelos
31/48
Microcontroladores: Tema 5
31
8ebotes en interruptores
H
L
5 A 20m)e+
1K
E
4.7K
ECC
S1
FA!
8/17/2019 TEMA_05 Puertos Paralelos
32/48
Microcontroladores: Tema 5
32
(nterruptor activo alto
ECC
FA!
()' P(A1K
E
4.7K
ECC
S1
FA!
HL
8/17/2019 TEMA_05 Puertos Paralelos
33/48
Microcontroladores: Tema 5
33
8ebotes
8/17/2019 TEMA_05 Puertos Paralelos
34/48
Microcontroladores: Tema 5
34
&écnicas antirrebotes >deJbounce?"+isten varias técnicas antirrebotes parainterruptores
•Utilizar un latc0 tipo setJreset•Un dispositivo especial para antiJrebotes
•3iltros 8C
•3irmare
Eer página =15 libro Kuang
8/17/2019 TEMA_05 Puertos Paralelos
35/48
Microcontroladores: Tema 5
35
%ntirebote por firmare
0ttp:)).ganssle.com)debouncing.0tm
ENTRA!A
ACTIVA ,
ESPERA
20m)e
S
PROCESA
ENTRA!A
8/17/2019 TEMA_05 Puertos Paralelos
36/48
Microcontroladores: Tema 5
36
(nterfaz a interruptores !(P/
-CL8)EPP)8"= 1
8%9)%A9)C17(A9J7
8%1)%A1)C17(A1J=
8%7)%A7)E8"3J)CE8"3)C7(AI4
8%=)%A=)E8"3I)C1(AI5
8%4)&9C6()C1'U&<
8%5)%A4)$$)KLE!(A)C7'U&;
8"9)8!)%A5 2
8"1)8)%A< M
8"7)C$)%A;
19
E!! 11
E$$ 17
'$C1)CL6(A)8%;1=
'$C7)CL6'U&)8%<14
8C9)&1'$')&1=C6(15
8C1)&1'$()CCP71<
8C7)CCP1)P1%1;
8C=)$C6)$CL12
8!9)P$P9 1M
8!1)P$P1 79
8!7)P$P7 71
8!=)P$P= 77
8C4)$!()$!%7=
8C5)$!'74
8C
8/17/2019 TEMA_05 Puertos Paralelos
37/48
Microcontroladores: Tema 5
37
-ane@o de mQltiples entradas
-CL8)EPP)8"=1
8%9)%A9)C17(A9J 7
8%1)%A1)C17(A1J =
8%7)%A7)E8"3J)CE8"3)C7(AI 4
8%=)%A=)E8"3I)C1(AI 5
8%4)&9C6()C1'U&
8/17/2019 TEMA_05 Puertos Paralelos
38/48
Microcontroladores: Tema 5
38
-ane@o de mQltiples entradas
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
O0 O1 O2 O3S1 S1 S1 S1
I0
I1
I2
I3
R P U L L
R P U L L
R P U L L
R P U L L
ECC
O3 O2 O1 O0 TECLAS
1 1 1 0 .0/1/2/3
1 1 0 1 .4/5/6/7
1 0 1 1 .8/9/A/&
0 1 1 1 .C/!/E/
8/17/2019 TEMA_05 Puertos Paralelos
39/48
Microcontroladores: Tema 5
39
(nicialización de puertos
• $e debe de reviar las posibles configuraciones decada puerto >Leer manual u 0o@a de datos deldispositivo especDfico utilizado?
• Las señales de cada puerto sirven aparte de entraday salida genérica como interfaz a otros periféficos.
• (ncializar el puerto con base a los reuerimienosespecDficos
• $iempre es sano inicializar incluso si laconfiguración default/ sea la deseada.
8/17/2019 TEMA_05 Puertos Paralelos
40/48
Microcontroladores: Tema 5
40
(nicialización de puertos
• La inicialización se realiza utilizando el registro$38 llamado &8($+ >&8($%* &8($#...etc?.
, "l bit 9 del registro corresponde al bit 9 del
puerto. , Un 1 define entrada* un 9 define salida
• Para el P(C12 e+isten algunos puertos ue sonentradas analógicas* se debe de especificar ademássu función utilizando el registro %A$"L+>%A$"L%* %A$"L#...etc?.
8/17/2019 TEMA_05 Puertos Paralelos
41/48
Microcontroladores: Tema 5
41
(nicialización de puertos
• "@emplo* inicializar del puerto % los bits 9 y ;como salidas y el resto como entradas:
%A$"L% B 9+99R ))!efinimos todo como digital
&8($% B 9b91111119R ))bits 9 y ; son salidas
• 'tra forma >sabiendo ue &8($% default B 9+ff?
&8($%bits.&8($%; B 9R ))"stilo microc0ip nivel bit
&8($%bits.&8($%M B 9R
8/17/2019 TEMA_05 Puertos Paralelos
42/48
Microcontroladores: Tema 5
42
Puerto # caso especial
• "l puerto # tiene pullJups/ integrados ue pueden serencendido o apagados por el usuario.
8/17/2019 TEMA_05 Puertos Paralelos
43/48
Microcontroladores: Tema 5
43
Lectura de puertos
• Para leer el valor de un puerto se pueden usar 7registros $38
L%&+ P'8&+
8/17/2019 TEMA_05 Puertos Paralelos
44/48
Microcontroladores: Tema 5
44
SCuando usar L%& o P'8&
• Cuando ueramos leer un P(A se recomiendautilizar P'8&.
• Cuando se utilicen operaciones ue deben de leer
escribir al puerto* se recomienda utilizar L%&. Pore@emplo* si ueremos incrementar el valor de salidade un puerto* es me@or
• L%&% B L%&% I1 ue P'8&% B P'8&% I 1R
8/17/2019 TEMA_05 Puertos Paralelos
45/48
Microcontroladores: Tema 5
45
"scritura a puerto
• Para escribir a un puerto* la instrucción L%&+ oP'8&+ tienen e+actamente el mismo efecto.
8/17/2019 TEMA_05 Puertos Paralelos
46/48
Microcontroladores: Tema 5
46
"@emplo• (mplementar un contador binario para el siguiente diseño. Cada vez ue se
presiona el botón se debera de incrementar puerto ! * utilizar una rutina antiJrebotes para la entrada* solo la parte ba@a del puerto será visible con L"!Gs
8/17/2019 TEMA_05 Puertos Paralelos
47/48
Microcontroladores: Tema 5
47
"@emplo #AIN
INIT2PTO
ENTRA!A 3 0,
!ELA4
PUERTO! 3
PUERTO! + 1
ENTRA!A 3 1,
!ELA4
NO
NO
INIT2PTO
PUERTO ! 3
SALI!A 567879
PUERTO &:0
ENTRA!A CON
PULL UP
IN
8/17/2019 TEMA_05 Puertos Paralelos
48/48
Microcontroladores: Tema 5
Top Related