Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Microprocesadores
Su Arquitectura interna
Modos de programacin
Su interconexin con un procesador
Aplicaciones
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
WR
RD
A0
A1
Buffer
Buffer
deldelbus
bus
dededatos
datos
Contador
Contador00
CLK0
GATE0
OUT0
Lgica
Lgicadede
lectura/
lectura/
escritura
escritura
Contador
Contador1 1
CLK1
GATE1
OUT1
Registro
Registrodede
control
control
Contador
Contador2 2
CLK2
GATE2
OUT2
CS
BUS
BUSINTERNO
INTERNO
Carlos E. Canto Quintal M.C.
M.C.
EL TIMER 8254
Microprocesadores
Latch
Latchdedestatus
status
Registro
Registrodedecontrol
control
Lgica
Lgicadede
Control
Control
Registro
Registrodedestatus
status
Registro
Registrodedeconteo
conteo
(CRM)
(CRM)MSB
MSB
Registro
Registrodedeconteo
conteo
(CRL)LSB
(CRL)LSB
CONTADOR
CONTADORnn(CE)
(CE)
Latch
LatchDeDeSalida
Salida(OLM)
(OLM) Latch
Latchdedesalida
salida(OLL)
(OLL)
MSB
LSB
MSB
LSB
EL TIMER 8254
Microprocesadores
Distribucin De Terminales
OUT0
GATE0
Contador 0
D0D0-D7
CLK0
OUT1
GATE1
CLK1
Contador 1
RD
WR
CLK2
A1
D6
D5
2
3
D4
D3
D2
D1
6
7
8
CLK0
OUT0
GATE0
GATE2
Contador2
D0
OUT2
A0
D7
CS
GND
24
23
22
21
20
9
10
11
12
8254
VCC
WR
RD
CS
A1
19
18
A0
17
OUT2
16
15
14
GATE2
13
OUT1
CLK2
CLK1
GATE1
EL TIMER 8254
Microprocesadores
RD
WR
A1
A0
FUNCION
CARGA CONTADOR 0
CARGA CONTADOR 1
CARGA CONTADOR 2
LEER CONTADOR 0
LEER CONTADOR 1
LEER CONTADOR 2
EL TIMER 8254
Microprocesadores
0
0
1
1
D6
D5
D4
SC0
SC0
RW1
RW1
RW0
RW0
Elegir contador:
0 contador 0
1 contador 1
0 contador 2
1 comando Read Back
0
0
1
1
D3
M2
M2
D2
D1
D0
M1M1
M0
M0
BCD
BCD
000
001
Operacin:
0 comando de enclavamiento x 1 0
x11
1 leer/escribir byte bajo
100
0 leer/escribir byte alto
101
1 leer/escribir byte bajo y
despus el alto
Modo:
modo 0
modo 1
modo 2
modo 3
modo 4
modo 5
Contador:
0 binario 16 bits
1 BCD 4 dcadas
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
D6
D5
11
11
-CONTEO
-CONTEO
D4
D3
D2
D1
D0
-STATUS
-STATUS CONTADOR2
CONTADOR2 CONTADOR1
CONTADOR1 CONTADOR0
CONTADOR0
00
ndola
para
que
puede
ser
le
enclav
leda con comodidad
por el puerto que corresponda a ese contador.
Carlos E. Canto Quintal M.C.
M.C.
EL TIMER 8254
Microprocesadores
Palabra de status
D7
D6
OUTPUT
NULLCOUNT
COUNT
OUTPUT NULL
Valor de la
terminal out
D5
D4
RW1
RW1
RW0
RW0
D3
M2
M2
D2
D1
D0
M1M1
M0
M0
BCD
BCD
Modo del
contador activo
1 Null count
0 cuenta disponible para ser leda
Contador:
0 binario 16 bits
1 BCD 4 dcadas
n
el
modo
programado
para
un
contador
y
el
estado
tambi
actual de la terminal OUT, adem
adems de verificar la bandera de cuenta nula
(Null Count)
Count) de los contadores que se indiquen
Carlos E. Canto Quintal M.C.
M.C.
EL TIMER 8254
Microprocesadores
D6
D5
D4
D3
D2
D1
SC0
SC0
00
00
XX
XX
XX
D0
XX
Si se env
envan varios comandos de enclavamiento al mismo contador, separados por un
cierto intervalo de tiempo, s
slo se considerar
considerar el primero (por tanto, la cuenta le
leda
corresponder
corresponder al valor del contador cuando fue enclavado por vez primera).
Carlos E. Canto Quintal M.C.
M.C.
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
WR
GATE
Se carga la cuenta al
registro de conteo
(4)
OUT
CLK
Pulso de
escritura
WR
(3)
(2)
Inicia conteo
(3)
(4)
(1)
(0)
(2)
(1)
Final de conteo
(0)
Conteo detenido
GATE
OUT
EL TIMER 8254
Microprocesadores
CLK
WR
GATE
(TRIGGER)
N=4
(3)
(2)
(1)
(0)
(4)
(3)
(2)
(1)
OUT
T=NTc
EL TIMER 8254
Microprocesadores
CLK
(3)
(2)
(1)
(2)
(1)
N=4
WR
GATE
OUT
T=NTc
N=cuenta cargada
Tc=periodo del reloj en CLK=1/fclk
EL TIMER 8254
Microprocesadores
CLK
WR
(3)
(2)
(1)
(2)
(1)
N=4
GATE
OUT
T1
T0-
T= NTc
N = cuenta cargada
Tc = periodo del reloj en CLK = 1/fclk
EL TIMER 8254
Microprocesadores
CLK
(3)
(2)
(1)
(0)
N=4
WR
GATE
OUT
T=NTc
N=cuenta cargada
Tc=periodo del reloj en CLK=1/fclk
Strobe
Strobe
EL TIMER 8254
Microprocesadores
CLK
WR
(3)
(2)
(1)
(0)
N=4
GATE
(TRIGGER)
OUT
T=NTc
Strobe
Strobe
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
RD
IORD
IORQ
RD
IOWR
WR
WR
Z80
Z80 A0
A1
BusdedeDirecciones
Direcciones(Bajo)
(Bajo)
Bus
A2
A3
A4
A5
A6
A7
A0
A1
Contador 0
Timer
8254
Contador 1
Out 1
Gate 1
Clock 1
Contador 2
Out 2
Gate 2
Clock 2
CS
74LS138
A2
A3
A4
A5
A6
A7
A
B
C
G1A
G1B
G2
Out 0
Gate 0
Clock 0
Y1=84H-87H
Direcciones
Direccionesvlidas
vlidas
para
paraelel8254:
8254:
84h
84h
contador
contador00
85h
contador
85h contador11
86H
86H
contador
contador22
87H
r.
87H r.control
control
Carlos E. Canto Quintal M.C.
M.C.
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
EL TIMER 8254
Microprocesadores
16
+VCC=5v
L293B
7
VEN
EL TIMER 8254
Microprocesadores
Motor
Motor
+5V
220
10 k
CLK 0
CLK 0
7414
Al 8254
EL TIMER 8254
Microprocesadores
Motor de CD
Z80
Z80
PPI
PPI
8255
8255
8254
8254
L293
L293
INT
Out 0
Clk 0
+5v
gate0
10 k
220
EL TIMER 8254
Microprocesadores
Circuito L293B
doble puente H
PPI
PPI
8255
8255
+5V
+VS
alimentacin
del motor
IN1
1
Out1
Motor de CD
4.7 k
EN1
()L293B
()L293B
Out2
IN2
220
+5V
10 k
4.7 k
T0
8254
8254
GATE0 CONTADOR
CONTADOR00
74LS14
OUT 0
CLK 0
Carlos E. Canto Quintal M.C.
M.C.
EL TIMER 8254
Microprocesadores
Uso del 8254 para controlar el conteo del giro de un motor de CD
PA.7
PB.0
PB.1
PC.0
PPI
PPI
8255
8255
L293B
L293B
Start
Gate0
Contador0
Contador0
Encoder
Encoder
Clk0
Programado en modo 0
Out 0
INT
Z80
Tono de 1khz
Gate1
Contador1
Contador1 Out 1
Clk 1
fclk =2Mhz
Circuito
Circuito
DeDereloj
reloj
deldelz80
z80
Contador2
Contador2
Programado en modo 3
No
Noseseusa
usa
TIMER 8254
Carlos E. Canto Quintal M.C.
M.C.
EL TIMER 8254
Microprocesadores
2
7
10
15
PA.7
PPI
8255
+5V
PB.0
PB.1
1
9
16
8
1Y
2Y
3Y
4Y
1A
2A
3A
4A
3
6
11
14
MOTOR CD
D1
1/2EN
3/4EN
D2
2
D4
VCC1
VCC2
D3
L293
2
INT
7414
1
+5V
+5V
BUS DE DATOS
+5V
24
8
7
6
5
4
3
2
1
IORD
IOWR
BUS DE DIRECCIONES
22
23
19
20
A0
A1
PPI
8255
1
2
3
A7
A6
A5
6
4
5
A
B
C
74LS138
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
15
14
13
12
11
10
9
7
21
12
G0
OUT0
CLK0
8254 CLK1
G1
OUT1
RD
WR
A0
A1
OUT2
CLK2
CS
GND
G2
11
10
9
10K
2
7414
220
15
14
13
17
18
+5V
16
SENSOR PTICO
84H-87H
SPEAKER
A2
A3
A4
VCC
D0
D1
D2
D3
D4
D5
D6
D7
2N3904
2.7 K
1
START
VS
PRACTICA NUM.9
APLICACIONES DEL TIMER /CONTADOR 8254
VCC
PC.0
CIRCUITO DE
RELOJ DEL
Z80
A7
1
A6 A5 A4 A3 A2 A1 A0
1 X
X
0
0 0
0
AL 8254
EL TIMER 8254
Microprocesadores
Final
Finaldede
conteo
conteo
Out 0
1 segundo
Gate1
Pita
Pitalalabocina
bocinapor
por1 1seg.
seg.
Tono de 1KHZ
Out 1
EL TIMER 8254
Inicio
Inicio
Ubica
Ubicaelel
Stack
Stack
Microprocesadores
Diagrama de flujo que muestran las tareas a realizar por el
programa
RSI
RSI
Configurar
Configurar
PPI
PPI
Detener
Detenerelel
motor
motor
Programar
Programar
ElEl8254
8254
iniciar
iniciarpitido
pitido
Bocina
Bocinaa a1khz
1khz
Inicializar
Inicializar
ElEl8254
8254
Habilitar
Habilitar
Interrupciones.
Interrupciones.
enenmodo1
modo1
Arranca
Arrancamotor
motor
Aqu
Aqu el Z80 entra en un
estado HALT hasta que ocurra
la interrupci
interrupcin
Si
Delay
Delay1 seg
1 seg
Parar
Pararpitido
pitido
DeDebocina
bocina
Si
CALL
CALLRSI
RSI
Inicializar
Inicializar
ElEl8254
8254
Motor
Motorgir
gir
1000
1000vueltas?
vueltas?
Out
Out0=alto?
0=alto?
Rehabilitar
Rehabilitar
Interrupciones.
Interrupciones.
No
RETI
RETI
Invertir
Invertirgiro
giro
deldelmotor
motor
EL TIMER 8254
Microprocesadores
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
1000H
80H
81H
82H
83H
88H
84H
85H
87H
0F0H
07H
EL TIMER 8254
Microprocesadores
;UBICA EL STACK
LD SP, STACK
LEER:
;ARRANCA EL MOTOR
IN A , (PTO_A)
AND 80H
JP NZ, LEER
LD A, 01H
OUT (PTO_B) , A
HALT
INICIA_8254 :
RET
EL TIMER 8254
Microprocesadores