13
Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico en Electrónica Industrial

Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Embed Size (px)

Citation preview

Page 1: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Periféricos E/S. VIA 65C22

Sistemas Digitales

2º curso Ingeniero Técnico en Electrónica Industrial

Page 2: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Bloques funcionales

Page 3: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Modelo del Programador

Page 4: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Puerto A7 6 5 4 3 2 1 0

DDRA7 DDRA6 DDRA5 DDRA4 DDRA3 DDRA2 DDRA1 DDRA0

7 6 5 4 3 2 1 0

ORA7 ORA6 ORA5 ORA4 ORA3 ORA2 ORA1 ORA0

7 6 5 4 3 2 1 0T2

Control

PB Latch Enable

PA Latch Enable

T1 Control SR Control

Configura pines como E ó SDDRA

Escribe en el puertoORA

Configura modo de funcionamiento

ACR

PA[7 a 0]PuertoA

CA1

8

Registros involucrados

Hardware Involucrado

7 6 5 4 3 2 1 0

IRA7 IRA6 IRA5 IRA4 IRA3 IRA2 IRA1 IRA0 Lee del puertoIRA

Page 5: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

7 6 5 4 3 2 1 0

DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0

7 6 5 4 3 2 1 0

ORB7 ORB6 ORB5 ORB4 ORB3 ORB2 ORB1 ORB0

7 6 5 4 3 2 1 0T2

Control

PB Latch Enable

PA Latch Enable

T1 Control SR Control

Configura pines como E ó SDDRB

Escribe en el puertoORB

Configura modo de funcionamiento

ACR

PB[7 a 0PuertoB

CB1

8

Registros involucrados

Hardware Involucrado

7 6 5 4 3 2 1 0

IRB7 IRB6 IRB5 IRB4 IRB3 IRB2 IRB1 IRB0 Lee del puertoIRB

Puerto B

Page 6: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Temporizador T1

Capacidades:

•Valor de cuenta de 16 bits.•2 latches (de 8 bits) para guardar el valor de la cuenta a realizar.•Generar un único intervalo de tiempo (una única cuenta).•Generar un intervalo de tiempo de forma contínua (modo Astable)•Producir un único o una serie contínua de pulsos en el pin 7 del Puerto B.•Generar una interrupción cada vez que la cuenta pase por 0.

Page 7: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Temporizador T1

7 6 5 4 3 2 1 0

DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0

7 6 5 4 3 2 1 0

ORB7 ORB6 ORB5 ORB4 ORB3 ORB2 ORB1 ORB0

7 6 5 4 3 2 1 0T2

Control

PB Latch Enable

PA Latch Enable

T1 Control SR Control

Configura el pin 7DDRB

ORB

Configura modo de funcionamientoACR

Registros involucrados:

Señala interrupciónde paso por ceroIFR

7 6 5 4 3 2 1 0

T1 Latch (High)7 6 5 4 3 2 1 0

T1 Latch (Low)

7 6 5 4 3 2 1 0

T1 Contador (High)7 6 5 4 3 2 1 0

T1 Contador (Low)

T1L-H y T1L-L

T1C-H y T1C-L

7 6 5 4 3 2 1 0

IRQ T1 T2 CB1 CB2 SR CA1 CA2

Habilita la interrupcióndefinida en IFRIER

7 6 5 4 3 2 1 0

IRQ T1 T2 CB1 CB2 SR CA1 CA2

Valor de cuenta(Estático)

Valor de cuenta(Variable)

Page 8: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Temporizador T1Modo de funcionamiento: Configuración•El registro ACR configura el modo de funcionamiento Monoestable ó Astable,

y la salida en el pin PB[7]. EN los registros IFR e IER se especifica la

generación de interrupción Hw .

Bit 7 ACR Bit 6 ACR Operación Pin 7 PORTB

0 0Modo Monoestable.Interrupción cadapaso por 0

0 1Modo Astable.Interrupciones deforma contínua

1 0Modo Monoestable.Interrupción cadapaso por 0

Impulso en la salidacon la interrupción

1 1Modo Astable.Interrupciones deforma contínua

Genera onda cuadrada

Inhabilitado

7 6 5 4 3 2 1 0T2

Control

PB Latch Enable

PA Latch Enable

T1 Control SR ControlACR

Frecuencias generadas:•Modo Monoestable: T=(N+1.5)/fVIA

•Modo Astable: T=(N+2)/fVIA

Page 9: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

7 6 5 4 3 2 1 0

T1L-H (nada)

7 6 5 4 3 2 1 0

T1C-L (nada)

Byte alto de la cuenta

Byte bajo de la cuenta

7 6 5 4 3 2 1 0

T1L-L (nada)

7 6 5 4 3 2 1 0

T1C-H (nada)

Byte bajo de la cuentaByte alto de la cuenta

Byte bajo de la cuenta

•Escribe el byte bajo de la cuenta en el latch T1L-L

•Escribe el byte alto del contador T1C-H.

Byte alto de la cuenta Comienza la cuentaComienza la cuenta

Temporizador T1Modo de funcionamiento: Inicio de la cuenta

•Escribe el byte alto del contador T1C-H. Automáticamente se copia en T1L-

H, T1L-L se copia en T1C-L y empieza la cuenta atrás.

•Al llegar a 0 se activa el bit 6 del IFR. Este bit es borrado al leer el byte bajo del

contador (T1C-L) o al escribir el Byte alto del mismo (T1C-H).

Page 10: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Interrupciones en la VIALos eventos que generarán una petición de interrupción (activación de la

señal IRQ#) de la VIA se determinan actuando sobre los registros IFR e IER.

Para que se active la línea, es necesario que el bit correspondiente al evento

ocurrido esté a 1 tanto en IFR como en IER.

Cada bit a 1 señala el evento que pide una interrupción

IFR: Interrupt Flag Register7 6 5 4 3 2 1 0

IRQ T1 T2 CB1 CB2 SR CA1 CA2

Si el bit está a 1 habilita la interrupción correspondiente

7 6 5 4 3 2 1 0

IRQ T1 T2 CB1 CB2 SR CA1 CA2

El bit 7 a 1, indica que alguno de los otros está a 1.

IER: Interrupt Enable Register

El bit 7 a 1, indica que se ha activado la línea IRQ#

Page 11: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Interrupciones en la VIAEsquema de generación de IRQ#:

Page 12: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Interrupciones en la VIAValor de los flags de interrupción:

Page 13: Sistemas Digitales Curso 2007/2008 Departamento de Tecnología E l e c t r ó n i c a Periféricos E/S. VIA 65C22 Sistemas Digitales 2º curso Ingeniero Técnico

Sistemas Digitales Curso 2007/2008

Departamento de TecnologíaE l e c t r ó n i c a

Periféricos E/S. VIA 65C22

Sistemas Digitales

2º curso Ingeniero Técnico en Electrónica Industrial