Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados...

20
1 Interfaz Paralelo 1 Puerta Dt l Puerta Salida Datos (DB) Datos al Mundo Exterior /CS Interfaz Paralelo 2

Transcript of Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados...

Page 1: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

1

Interfaz Paralelo 1

Puerta D t lPuertaSalida

Datos (DB) Datos alMundo Exterior

/CS

Interfaz Paralelo 2

Page 2: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

2

Puertade

SalidaBus de Datos del

Microprocesador

Al mundoExteriorMicroprocesador

U13478

13141718

1

256912151619

D0D1D2D3D4D5D6D7

Q0Q1Q2Q3Q4Q5Q6Q7

Interfaz Paralelo 3

74LS374

111 OC

CLK

De la lógica deDecodificación

Datosdigitales al mundo

U1

D03

D1 4

D2 7

D38

D4 13

Q02

Q15

Q26

Q39

Q412

Del bus de datos delmicroprocesador

Decodificación de

mundoexterior

IO/M* delmicroprocesdor

U2

A1

B2

C3

G16

Y0 15

Y1 14

Y213

Y3 12

Y4 11

Y510

74AC374

D4D5 14

D617

D7 18

OC1

CLK 11

Q4Q515

Q616

Q719

Interfaz Paralelo 4

Decodificación depuertas

74AC138

G1G2A4

G2B5Y5Y6 9

Y7 7

Page 3: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

3

Interfaz Paralelo 5

PuertaPuertaEntrada

Datos delMundo Exterior

/CS

Al DB

Interfaz Paralelo 6

Page 4: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

4

Puerta deEntrada

D l M dBus de Datos del Microprocesador

Del MundoExterior

U22468

11

181614129

1A11A21A31A4

1Y11Y21Y31Y4

Interfaz Paralelo 7

74LS244

11131517

119

9753

2A12A22A32A4

1G2G

2Y12Y22Y32Y4

De la lógica deDecodificación

Datosdigitales demundo

U1

1A1 2

1A24

1A3 6

1A4 8

2A1 1113

1Y118

1Y216

1Y314

1Y412

2Y197

Al bus de datos delmicroprocesador

Decodificación dep ertas

mundoexterior

IO/M* delmicroprocesdor

74ALS244

2A12A2 13

2A315

2A4 17

1G 1

2G 19

2Y12Y27

2Y35

2Y43

U2

A1

B2

C3

G16

G2A4

Y0 15

Y1 14

Y2 13

Y3 12

Y4 11

Y5 10

Y6 9

Interfaz Paralelo 8

puertas

74AC138

G2AG2B5 Y6

Y7 7

Page 5: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

5

Estadísticamente se sabe que una mecanógrafa escribe 35 palabras por minutoy que cada palabra (en español) tiene un promedio de 6 letras (5 letras más unespacio entre letras = 6 teclas). Entonces en un minuto escribe

35*6 = 210 teclas.

Nos interesa saber cuánto tiempo está presionada una letra:Nos interesa saber cuánto tiempo está presionada una letra:

1/210 [min] = 0,004761 [min] = 0,004761 * 60 [seg] = 0,285714 [seg]

que expresado en unidades “más electrónicas” es

285 [ms]/tecla.

Esta es una cota inferior, de manera que para el usuario normal podemos

Interfaz Paralelo 9

, q p pconsiderar que una tecla está presionada

300 [ms]/tecla,

o sea, más o menos presiona 3 teclas por segundo.

Consideraciones• Para garantizar que una línea de E/S actuará como

entrada debe escribirse un “1”.entrada debe escribirse un 1 .• Según el puerto que se utilice, se deberán emplear (o

no) resistores de pull-up.• Preferiblemente (salvo en dispositivos 100% CMOS),

los leds se encenderán con señales activas bajas

Interfaz Paralelo

Page 6: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

6

Teclado elemental

Interfaz Paralelo 11

Teclas fantasmas

Interfaz Paralelo 12

Page 7: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

7

Barrido de teclado – Máquina de estados

TeclaPresionada = 0

Tic = 5ms

TeclaPresionada = 0BarrerFila()BuscarColumna()

Condiciónde entrada

0(la soltó)

Barriendo teclado TeclaPresionada = 1Tic = 20 ms

Validandopresión

BuscarColumna()(la misma anterior)

TeclaPresionada = 0(era ruido)

Tic = 5 ms Esperandoliberación

TeclaPresionada = 1BuscarCodigoTecla()1

Interfaz Paralelo 13

(la misma anterior)BuscarCodigoTecla() TeclaPresionada = 1BarrerFila()BuscarColumna()(la misma anterior)

Cola EntradaPSAL PENT Interr entradaPENT Interr entrada

PENTPENTPENTPENT

Interfaz Paralelo 14

Page 8: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

8

Cola SalidaPSAL Interr. Salida

PENT

PSALPSALPSALPSAL

Interfaz Paralelo 15

Vcc

/CS

BUS Datos U1

171G

12G19

3

U274LS138

Y0

15Y

114

Y2

13Y

312

Y4

11Y

510

Y6

9Y

77

74ALS244

1A121A241A361A482A1112A2132A3 152A417

1Y118 1Y216 1Y314 1Y412 2Y1

9 2Y27 2Y35 2Y43

Interfaz Paralelo 16

Vcc

/CS

BUS Direcciones

A1

B2

C3

G1

6G

2A4

G2B

5

Page 9: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

9

Conexión de un LED a μcontrolador

Interfaz Paralelo 17

Cálculo de la resistencia limitadora, R1 , para la conexión con un buffer TTL

Vcc – VD – R1 . ID – VOL = 0 [v]siendo:VOL = 0,35 [v] tensión de salida en estado bajo, TTL.ID = 0,010 [A] corriente adecuada para que brille un LED comúnVcc = 5 [v] tensión de alimentaciónVD = 1,4 [v] tensión que cae sobre el LED (de 1,2 a 1,6 [V])Despejando R1 :R1 = [5 – 1,4 – 0,35 ] [v] / 0,010 [A]R1 = 325 ohm Comercial: R1 = 330 ohm

Interfaz Paralelo 18

Page 10: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

10

Selección de drivers para displays de LEDs

www.allegromicro.com

Interfaz Paralelo 19

Interfaz Paralelo 20

Page 11: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

11

UDN 2981

Interfaz Paralelo 21

Interfaz Paralelo 22

Page 12: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

12

Interfaz Paralelo 23

línea 0 – seg. a

línea 1-- seg. b

línea 2 – seg. c

PNPUDN 2981Corriente de salida -350mA

Imáx. 40 mA

línea 3 – seg. d

línea 4 – seg. e

línea 5 – seg. f

línea 6 – seg. g

Puerta de salida

Interfaz Paralelo 24

Imáx. 240 mA

0,7 V

ULN 2803Corriente de salida 350mANPN

línea de habilitaciónPuerta de salida

Page 13: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

13

Interfaz Paralelo 25

Corriente

Interfaz Paralelo 26

Page 14: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

14

Deducción del cálculo de la corriente máxima que circulará por

cada LED

Partiendo de las expresiones de la potencia instantánea:

p(t) = v(t) i(t)p(t) = v(t) . i(t)p(t) = i2(t) . R (1)

Como la potencia instantánea se interpreta como la velocidad con que se intercambia energía:

p(t) = dW(t) / dt (2)de (1) y (2)

dW(t) / dt = i2 (t) . R

Interfaz Paralelo 27

d (t) / dt (t)Operando:

dW(t) = i2(t) . R . dt

Resolviendo la integral para obtener la potencia en el período de tiempo considerado (T = tiempo de barrido del display):

Para la señal anterior:Imáx 0 < t < Ta

i(t) = 0 Ta < t < T

El ciclo de actividad es: δ = Ta / T

⎟⎟⎠

⎞⎜⎜⎝

⎛= ∫ ∫

Ta T

TaD dtdtITI

0max

2 .0...1

El valor eficaz será, reemplazando en (5):

⎠⎝ Ta0

δ

ID 2 = Ta / T . Imáx

ID = Imáx . Ta / T

ID = Imáx .

δ = 1 / m

Interfaz Paralelo 28

δID Imáx .

Imáx = ID . m

Page 15: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

15

Cálculo del resistor en serie con cada dígito

Datos:Imáx = 24,5 [mA] corriente máxima en cada LEDVD = 1,4 [v] caída de tensión sobre el LEDVCC = 5 [v] tensión de alimentación de la fuenteVCE = 1 8 [v] tensión de saturación típica para el UDN 2981

Interfaz Paralelo 29

VCE 1,8 [v] tensión de saturación típica para el UDN 2981VCE = 1,1 [v] tensión de saturación típica para el ULN 2803VOL = 0,25 [v] tensión típica de salida del buffer 74LS244 en estado bajo

Nota: la caída de tensión sobre cada LED es de 1,2 V, de 1,4 V o de 1,6 V, se puede tomar ~ 1,4 V.

VCC - VCE-UDN - R1 * Imáx - VD - VCE-ULN = 0

Rl = (VCC - VCE-UDN - VD - VCE-ULN ) / Imáx

Rl = ( 5 – 1,8 – 1,4 – 1,1 ) / 0,0245 [v]/[A]

Rl = 33 [ohm] Rl = 28,6 [ohm] Valor comercial:

Hoja de datos del Four-Digit Numeric LED Displays UVC-3710ERR – Unity Opto Technology

Interfaz Paralelo 30

Page 16: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

16

Interfaz Paralelo 31

En resumen, durante el tiempo de barrido (T), se debe:

1. Poner la información de los segmentos.2. Habilitar el dígito.3. Mantener la información (Ta).4. Poner la información que corresponde a los segmentos apagados.5. Inhabilitar el dígito.6. Repetir el procedimiento para cada uno de los dígitos hasta volver al primero.

TABLA equ 00000001b ;1er. dígito encendido (configuración cátodo común)equ 00000010b ;2do. dígito encendidoequ 00000100b ;etc.equ 00001000bequ 00010000bequ 00100000bequ 01000000bequ 10000000b

FIN_TABLA equ $-TABLA

Interfaz Paralelo 32

Problemas que han de tenerse en cuenta en el barrido dinámico del display:

1. De la hoja de datos del LED saque el valor pico de corriente máximo que soporta elLED sin destruirse.

2. Averigüe si el LED tiene capacidad para disipar la potencia que se le transfiere.

3. Averigüe si existe el driver para manejar la corriente de segmento o dígito.

Page 17: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

17

Dig 1 Dig 2 Dig n

. . . . . . .

Seg a

Seg b

Seg c

Q?NPN

Q?NPN

Q?NPN

Interfaz Paralelo 33

Seg d

Seg e

Seg f

Seg g

PD

NPN

Q?NPN

Q?NPN

Q?NPN

Q?NPN

Q?NPN

STANDARD CHIP-ON-GLASS DISPLAYS

Format Part Number Outline Dimensions Viewing Area Backlight Options Interface16 x 2 ACM1602U 65.0 x 27.7 x 1.85 61.0 x 15.7 none / reflective w ith metal pins128 x 48 AGM1248A-RN-FBS 34.0 x 20.0 x 2.0 32.0 x 11.0 none / reflective w ith metal pins128 x 64 AGM1264H-RN-GTS 77.5 x 51.3 x 2.8 70.7 x 38.8 none / reflective ZIF-plugable f lex128 x 64 AGM1264H-FN-FTW* 77.5 x 51.3 x 2.8 70.7 x 38.8 none / transflective ZIF-plugable f lex128 x 64 AGM1264H-FLW-FTW 81.5 x 53.3 x 6.8 70.7 x 38.8 LED (White) ZIF-plugable f lex128 x 64 AGM1264K-FN-FBS* 57.6 x 42.0 x 2.0 54.6 x 32.0 none / transflective ZIF-plugable f lex128 x 64 AGM1264M-FL-FBW 74.0 x 60.0 x 7.6 65.0 x 41.0 LED (Yellow /Green) ZIF-plugable f lex240 x 160 AGM2416B-FN-FBW* 76.0 x 55.8 x 2.0 67.0 x 46.8 none / transflective solderable f lex320 x 240 AGM3224K-FN-FBD* 88.3 x 69.1 x 2.2 79.8 x 60.6 none / transflective ZIF-plugable f lex

Interfaz Paralelo 34

* - to be used with customer’s own backlight behind

Page 18: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

18

AGM1248A-RN-FBS

Interfaz Paralelo 35

Pines de un display LCD

Interfaz Paralelo 36

Page 19: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

19

Símbolos LCD

Interfaz Paralelo 37

Instrucciones LCD

Interfaz Paralelo 38

Page 20: Guia de clase 2009 [Modo de compatibilidad] - UTN · 7 Barrido de teclado – Máquina de estados TeclaPresionada = 0 Tic = 5ms TeclaPresionada = 0 BarrerFila() BuscarColumna() Condición

20

A una línea del businterno de datos

Latch(DDR)

LatchDatos

Pata del CircuitoIntegrado

Interfaz Paralelo 39

A la lógica de control