Microprocesadores%28IME93%29 2014 2.Desbloqueado

Embed Size (px)

Citation preview

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    1/66

    Universidad Nacional Autnoma de Mxico

    Facultad de Estudios Superiores Cuautitln

    Departamento: Ingeniera

    Seccin: Electrnica

    Laboratorio de Microprocesadores

    Asignatura: Microprocesadores

    Clave Carrera: 116 Clave Asignatura: 0586

    Autor: M. en TI. Jorge Buenda Gmez

    Fecha de Elaboracin: 2000

    Fecha de modificacin: Diciembre 2013

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    2/66

    ndice I

    Laboratorio de Microprocesadores

    ndice

    ndice I

    Prlogo II

    Reglamento VII

    Prctica 1 Herramientas de prueba para el sistema mnimo 11.1Elementos de un microcomputador

    Prctica 2 Generador de reloj para microprocesador 61.1Elementos de un microcomputador

    Prctica 3 Circuito de auto reset para microprocesador 112.4 El funcionamiento interno: los diagramas de estado

    Prctica 4 Memoria EEPROM o memoria de programa 153.2 Estructura de los sistemas de memoria

    Prctica 5 Puertos de entrada / salida (input / output) 228.3. Interfaces integrados: PIA, PIO, PPI y similares

    Prctica 6 Memoria SRAM o memoria de datos 313.2 Estructura de los sistemas de memoria

    Prctica 7 Conexin de dispositivo perifrico de entrada (Teclado) 376.1.1. Control de dispositivos con tcnicas de programacin

    Prctica 8 Conexin de dispositivo perifrico de salida (Display LCD) 446.1.1. Control de dispositivos con tcnicas de programacin

    Prctica 9 Control de velocidad de motor de CD con PWM 51

    6.1.1. Control de dispositivos con tcnicas de programacin

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    3/66

    Prlogo II

    Laboratorio de Microprocesadores

    Prlogo

    Objetivos generales de la asignatura

    Comprender la estructura y funcionamiento de los microprocesadores para aplicarlos en la solucin de problemasde ingeniera

    Objetivos del curso experimental

    Implementar un sistema digital que incluya un microprocesador como elemento central. Identificar la funcin que realiza cada uno de los elementos que conforman el esquema de Von Neumann: reloj,

    microprocesador, memoria ROM, memoria RAM, puertos de entrada, puertos de salida y dispositivos perifricos.

    Conocer la sealizacin caracterstica que se presenta en los sistemas digitales con microprocesador e identificarde forma adecuada la forma en que interactan los circuitos de apoyo que se emplean para la creacin de una

    computadora.

    Disear, programar, simular e implementar algoritmos que le permitan al sistema digital con microprocesadorinteractuar con los dispositivos perifricos y probar la funcionalidad de todas y cada una de las partes que

    conforman al esquema de Von Neumann.

    Introduccin

    Actualmente, los sistemas digitales que integran microprocesadores, se han expandido a la mayora de los sistemas

    inteligentes que se emplean para controlar maquinaria industrial, sistemas de cmputo, telfonos celulares, televisiones,

    electrodomsticos y en general todo aquel sistema que requiera capacidad de procesamiento automatizada.

    Este laboratorio proporciona al alumno la teora y los mtodos para disear e implementar sistemas electrnicos

    avanzados que incluyan microprocesadores y adems todos los dispositivos perifricos necesarios para realizar las

    interfaces hombre mquina que permitan controlar a este tipo de sistemas, los cuales estn orientados a mejorar la forma

    de vida de las personas y liberarlas de actividades repetitivas.

    Uno de los objetivos primordiales del Laboratorio de Microprocesadores es la implementacin de un sistema de

    cmputo que emplee un microprocesador Z80 como elemento central, a este sistema digital se le conoce como sistema

    mnimo, el cual consta de los elementos ms significativos para la construccin de una computadora.

    La implementacin se llevar a cabo, armando y probando las diferentes etapas que forman al sistema en cada una de

    las sesiones del laboratorio avanzando de forma paulatina hasta construir el proyecto en su totalidad.

    Este circuito denominado sistema mnimo es en realidad una computadora completa que puede realizar todas las

    funciones asociadas con un sistema de esta naturaleza.

    El sistema mnimo a implementar se basa en el esquema de Von Neumann, el cual contiene una serie de elementos que

    permiten la ejecucin de programas en lenguaje ensamblador y la interaccin con dispositivos perifricos y con el

    usuario, la figura P.1 nos muestra el esquema general de la arquitectura Von Neumann, el cual consta de un sistema de

    reloj, un microprocesador, la memoria ROM de programa, la memoria RWM (RAM) de datos, los puertos de entrada, lospuertos de salida y los dispositivos perifricos.

    En cada una de las prcticas de este laboratorio se implementar una de las partes que conforman al esquema de Von

    Neumann para que al final del curso se tenga un sistema de cmputo completo y funcional para la ejecucin de

    programas en lenguaje ensamblador y para la conexin de diferentes dispositivos perifricos.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    4/66

    Prlogo III

    Laboratorio de Microprocesadores

    Reloj

    Memoria

    ROM

    (Programa)

    Bus de Datos

    Puertos de

    Entrada

    Puertos de

    Salida

    Bus de Direcciones

    Bus de Control

    Memoria

    RAM

    (Datos)

    Dispositivos Perifricos

    Microprocesador

    Figura P.1

    El sistema armado completo se muestra en la figura P.2.

    Figura P.2

    En el cual se pueden identificar las siguientes partes:

    1

    2

    3

    56

    7

    4

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    5/66

    Prlogo IV

    Laboratorio de Microprocesadores

    # Elemento del esquema de Von Neumann

    1 Circuito de reloj

    2 Circuito de reset

    3 Microprocesador Z80

    4 Lgica de control y decodificacin

    5 Memoria de programa (EEPROM)6 Memoria de datos (SRAM)

    7 Puertos de entrada / salida

    Tabla P.1

    Cada uno de estos elementos ser armado y probado para asegurar que el sistema funcione de forma adecuada.

    Debido a que el objetivo es implementar el sistema completo, entonces ser necesario conservar la parte del circuito

    que se haya armado en prcticas anteriores para que poco a poco se complete el sistema mnimo y por lo tanto el

    alumno deber contar con al menos 2 tabletas de prueba (protoboard) para armar el sistema como se muestra en la

    figura P.2.

    En la implementacin de este sistema deben realizarse una serie de consideraciones que de llevarse a cabo traen como

    consecuencia un circuito sin errores de conexin y falsos contactos facilitando las pruebas y garantizando unfuncionamiento correcto.

    Una de las consideraciones tiene que ver con la forma del alambrado, como se puede observar en la figura P.2, los

    alambres de conexin deben ser lo ms corto posible entre 2 puntos del sistema y no deben elevarse sobre la tableta ni

    sobre los circuitos integrados puesto que esta accin provoca la interferencia por ruido.

    Los circuitos deben quedar libres en su parte superior para que puedan ser extrados en caso de un desperfecto en su

    funcionamiento o para poder programar a la EEPROM o a la GAL22V10D con los diferentes programas que se disearn

    para probar el sistema.

    El grosor de los cables debe ser de calibre 24 estaados para que se realice un buen contacto, el cable empleado en las

    redes de computadoras STP categora 5 no es recomendable puesto que es muy delgado y no produce un buen

    contacto en la protoboard.

    Para realizar la conexin, los cables deben insertarse en los orificios de la tableta de conexiones considerando que la

    punta descubierta del cable debe ser igual al alto de la tableta y no demasiado corta ni excesivamente larga, tal y como

    se muestra en la figura P.3.

    Figura P.3

    Adems, para la elaboracin del sistema se deber considerar que algunos de los circuitos empleados son de tecnologa

    CMOS y NMOS, por lo tanto son sensibles a descargas de voltaje por lo que hay que tener las precauciones necesariascon respecto a las descargas electrostticas para no causarles dao.

    Para realizar la manipulacin de los circuitos el alumno deber descargarse sobre algn objeto metlico y tomar los

    circuitos por los extremos y no por las terminales. En ambientes industriales esta operacin se realiza con pulseras y

    tapetes de descarga antiesttica.

    Conexin correcta Conexin Incorrecta

    Tableta de

    Conexiones

    Cable

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    6/66

    Prlogo V

    Laboratorio de Microprocesadores

    Para la realizacin de este laboratorio se utilizarn herramientas adicionales a las consideradas en los laboratorios

    tradicionales de electrnica, tales como computadoras, software de ensamblado y ligado de programas en lenguaje

    ensamblador, simuladores de microprocesadores y simuladores de circuitos digitales, software para programar memorias

    EEPROM y dispositivos lgicos programables GALs, adems de la creacin de una punta lgica de prueba para la

    comprobacin del tercer estado presentado por los circuitos del proyecto.

    El alumno deber estar familiarizado con estas herramientas para poder realizar los procesos necesarios para las actividades

    previas y pueda presentar las simulaciones de hardware o software y tambin los archivos ensamblados que se

    programarn en la memoria del sistema.

    Los criterios de evaluacin para el laboratorio son los siguientes:

    C1 (Criterio de evaluacin 1): Reporte entregado con todos los puntos indicados (50%)

    C2 (Criterio de evaluacin 2): Participacin (20%)

    C3 (Criterio de evaluacin 3): Habilidades en la toma de mediciones (20%)

    C4 (Criterio de evaluacin 4): Armado de la prctica (10 %)

    Tambin ser necesario incluir en cada prctica, una portada (obligatoria) como la mostrada a continuacin.

    Instrucciones para la elaboracin del reporte

    Para la presentacin del reporte se deber cumplir con los requisitos indicados en cada una de las prcticas, incluyendo:

    Portada Introduccin. Procedimiento experimental Circuito Tablas de datos Grficas Comentarios Observaciones Esquemas Diagramas Cuestionario

    y en general todos los elementos solicitados dentro del desarrollo de la prctica.

    U. N. A. M.F. E. S. C.

    Laboratorio de : ________________________________________ Grupo: ___________

    Profesor: ________________________________________________________________

    Alumno: _________________________________________________________________

    Nombre de Prctica: _________________________________ No. de Prctica:________

    Fecha de realizacin: _______________________ Fecha de entrega:________________

    Semestre: ____________

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    7/66

    Prlogo VI

    Laboratorio de Microprocesadores

    Bibliografa

    1. Brey, Barry B (2001), Los microprocesadores Intel : arquitectura, programacin e interfaz de los procesadores8086/8088, 80186/80188, 80286, 80386, 80486 Peintium, Peintium Pro y Pentuim II , Mxico, D.F. : Pearson

    Educacin.

    2. E. Mandado, E. Tassis (1996).Diseo de sistemas digitales con microprocesadores. Mxico, D.F. : Alfaomega.3. Medina E. A. , Marrero M.M. (2008) Diseo de sistemas electrnicos digitales con microprocesadores. Espaa

    : Universidad de las Palmas de Gran Canaria.

    4. Tokheim, Roger L. (1991). Fundamentos de los microprocesadores. Madrid; Mxico : McGraw-Hill.5. Jos Ma. Angulo Usategui. (1990). Microprocesadores 8086, 80286 y 80386. Madrid : Paraninfo.6. Khambata, A.J. (1987). Microprocesadores-microcomputadores : Arquitectura, software y sistemas. Barcelona ;

    Mxico : Gustavo Gili.

    7. Ciarcia Steve. (1984). Construya una microcomputadora basada en el Z80 : Gua de diseo y funcionamiento.Madrid ; Mxico : Byte/Mcgraw-Hill.

    8. Crisp, John.(2004). Introduction to microprocessors and microcontrollers. (2nd). Amsterdam ; Boston :Elsevier/Newnes.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    8/66

    Reglamento Interno del Laboratorio de Comunicaciones, Control y Electrnica VII

    Laboratorio de Microprocesadores

    Reglamento Interno del Laboratorio de

    Comunicaciones, Control y Electrnica

    1. Dentro del laboratorio queda estrictamente prohibido.a. Correr, jugar, gritar o hacer cualquier otra clase de desorden.b. Dejar basura en las mesas de trabajo y/o pisos.c. Sentarse sobre las mesasd. Fumare. Introducir alimentos y/o bebidas.f. Introducir cualquier objeto ajeno a las prcticas de laboratorio, tales como: televisiones, equipos de sonido

    (aun con audfonos) excepto algn equipo para realizar las prcticas

    g. La presencia de personas ajenas en los horarios de laboratorio.h. Dejar los bancos en desorden.i. Mover equipos o quitar accesorios de una mesa de trabajo a otra sin el consentimiento previo del profesor de

    laboratorio en turno.

    j. Usar o manipular el equipo sin el conocimiento previo del profesor.k. Rayar las mesas del laboratorio.l. Energizar algn circuito sin antes verificar que las conexiones sean las correctas (polaridad de las fuentes de

    voltaje, multmetros, etc.).

    m. Hacer cambios en las conexiones o desconectar equipo estando est energizado.n. Hacer trabajos pesados (taladrar, martillar, etc.) en las mesas de las prcticas, para ello se cuenta con mesas

    especiales para este tipo de trabajos.

    2. Verifique las caractersticas de los dispositivos electrnicos con el manual o pregunte a su profesor de laboratorio.3. Es responsabilidad del usuario revisar las condiciones del equipo del laboratorio al inicio de cada prctica y reportar

    cualquier anomala que pudiera existir (prendido, daado, sin funcionar, maltratado, etc.) al profesor del

    laboratorio correspondiente.

    4. Es requisito indispensable para la realizacin de las prcticas, que el alumno cuente con su manual completo yactualizado al semestre en curso, las cuales podrn obtener en:

    http://olimpia.cuautitlan2.unam.mx/pagina_ingenieria.

    5. El alumno deber traer su circuito armado para poder realizar la prctica, de no ser as no podr realizar dichaprctica (donde aplique) y tendr una evaluacin de cero.

    6. Quien requiera hacer uso de las instalaciones de laboratorio para desarrollar trabajos, prcticas o proyectos, esrequisito indispensable que est presente el profesor responsable atendiendo a los alumnos, en caso contrario no

    podrn hacer uso de dichas instalaciones.

    7. Correo electrnico del buzn para quejas y sugerencias para cualquier asunto relacionado con los Laboratorios deElectrnica. ([email protected])

    8. La evaluacin del laboratorio, ser en base a lo siguiente:A - (Acreditado); Cuando el promedio total de todas las prcticas de laboratorio sea mayor o igual a 6 siempre

    y cuando tengan el 90% de prcticas acreditadas en base a los criterios de evaluacin.

    NA - (No Acreditado); No se cumpli con los requisitos mnimos establecidos en el punto anterior.

    NP - (Nunca se present); con o sin asistencia pero que no haya entregado reporte alguno.

    9. Los casos no previstos en el presente reglamento sern resueltos por el Jefe de la Seccin.

    mailto:[email protected]:[email protected]
  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    9/66

    Reglamento Interno del Laboratorio de Comunicaciones, Control y Electrnica VIII

    Laboratorio de Microprocesadores

    NOTA: En caso de incurrir en faltas a las disposiciones anteriores, el alumno ser acreedor a las siguientes sanciones por

    parte del profesor de laboratorio segn sea el caso y la gravedad.

    Baja temporal del grupo de laboratorio al que est inscrito.

    Baja definitiva del grupo de laboratorio al que est inscrito.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    10/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 1 Herramientas de prueba para el sistema mnimo 1

    Tema

    1.1Elementos de un microcomputadorObjetivo

    Implementar un mdulo de visualizacin con leds para probar el estado de las salidas de los buses delmicroprocesador.

    Implementar un dispositivo de prueba denominado punta lgica para probar los estados digitales de 0lgico, 1 lgico y tercer estado Z.

    Comprobar las mediciones de tercer estado sobre un circuito 74LS125.Introduccin

    Para realizar pruebas al sistema en una forma ms eficiente es necesario utilizar herramientas de apoyo que permiten

    visualizar o insertar las seales de los buses del microprocesador.

    En este tipo de sistemas se hace necesario verificar el estado de varias seales digitales de forma simultnea y debido a

    que los osciloscopios solo tienen 2 canales es preferible utilizar puntas de prueba con LEDs o barras de LEDs, tal y como

    se muestra en las figuras 1.1 y 1.2.

    Figura 1.1 Figura 1.2

    En los sistemas de microprocesadores varios de los circuitos que intervienen en su implementacin son capaces de

    proporcionar salidas de tercer estado necesarias para dar la capacidad de conexin de 2 o ms salidas en un mismo

    punto sin provocar un corto circuito, siempre y cuando exista un control de activacin de cada una de las salidas

    conectadas a dicha unin.

    El circuito de salida tpico empleado en las compuertas TTL es el circuito de Totem Pole mostrado en la figura 1.3 para

    una compuerta AND, en el cual se logran los estados de 0 lgico y 1 lgico al saturar y cortar a los transistores Q3 y

    Q4 como se muestra en la tabla 1.1.

    X Y Q3 Q4 Salida

    0V 0V Saturacin Corte 0V

    0V 5V Saturacin Corte 0V

    5V 0V Saturacin Corte 0V

    5V 5V Corte Saturacin 5V

    Tabla 1.1 Tabla de estados de salidas Totem Pole

    Laboratorio de MicroprocesadoresPrctica 1

    Herramientas de prueba para el sistema mnimo

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    11/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 1 Herramientas de prueba para el sistema mnimo 2

    En este circuito los transistores Q3 y Q4 siempre estn en estados contrarios, nunca se establecen los 2 en corte o los 2

    en saturacin, lo cual produce solo 2 posibles estados 0 y 1.

    En la condicin de tercer estado mostrada en la figura 1.4, los 2 transistores de la salida Totem Pole Q3 y Q4 de una

    compuerta NAND TTL se ponen en el estado de corte y por lo tanto presentan una impedancia alta entre la salida y

    tierra y entre la salida y Vcc, en otras palabras al estar los 2 transistores en corte la terminal de salida es una terminal

    abierta o flotante que no tiene valor de 0 o de 1.

    Figura 1.3 Figura 1.4

    En esta prctica se implementar adems un circuito denominado punta lgica el cual es capaz de identificar a travs

    del encendido de 3 leds independientes, alguno de los 3 estados posibles de un circuito que presente alta impedancia

    adems de los dos estados lgicos 0 y 1.

    Debido a que el estado de alta impedancia es muy similar al estado de desconexin, entonces la punta de prueba al aire

    mostrar un estado similar al tercer estado.

    Este circuito debe ser implementado de forma permanente para emplearlo como instrumento de prueba en todas las

    partes que forman al sistema de microprocesador, una posible forma de implementacin es la siguiente.

    Figura 1.5 Circuito de punta lgica

    Figura 1.6 Punta lgica con puntas de alimentacin y prueba

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    12/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 1 Herramientas de prueba para el sistema mnimo 3

    Actividades Previas a la Prctica

    1. EI alumno deber realizar la lectura de la prctica de laboratorio.2. Realizar la simulacin del circuito de la figura 1.7 utilizando el software Proteus.3. Realizar la simulacin del circuito de la figura 1.9 considerando que en el simulador solo se pueden probar los

    estados 0 y 1 lgico de entrada y el estado de alta impedancia no se puede simular.

    4. Traer los circuitos armados.5. Investigar el concepto de tercer estado.Material

    10 Resistencias de 0.47 k a W.

    8 Diodo LED Rojo barra de 10 leds (debern adicionarse 2 resistencias de 0.47 k a W.)

    1 Diodo LED Rojo

    1 Diodo LED Verde

    1 Diodo LED Amarillo

    2 Resistencias de 1k a W.

    1 Circuito Integrado 74LS00

    1 Circuito Integrado 74LS125

    1 Transistor BC547Cables de conexin

    Cable plano (30 cm.)

    2 Bananas

    Equipo

    1 Multmetro

    1 Proto Board

    Alambres de conexin

    Procedimiento Experimental

    1. Implemente solo uno de los circuitos de las figuras 1.7 1.8.2. Compruebe el comportamiento correcto del circuito, observando el encendido y apagado de cada uno de los leds,conectando las terminales de entrada al nivel de 5V tierra respectivamente.

    Figura 1.7 Figura 1.8

    3. Este tipo de herramientas ayudan mucho en la determinacin rpida de las fallas en los circuitos que contienenprocesadores y por ello es necesario implementar alguna de ellas en forma permanente como se indica en las

    figuras 1.1 y 1.2.

    4. Implemente el circuito de la figura 1.9 considerando las terminales indicadas en cada una de las compuertas.5. Alimente el circuito con 5V, as como la compuerta 74LS00 (terminal 14 = 5V. y terminal 7 = 0V.)

    D9

    D1 - D8LED

    D7D6D5D4D3D2D1D0

    BAR-10UR

    Barra de led's

    123456789

    201918171615141312

    10

    11

    D7

    D4D5D6

    D2D3

    D0D1

    R9 - R180.47k

    D8

    R1 - R80.47k

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    13/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 1 Herramientas de prueba para el sistema mnimo 4

    6. Compruebe el comportamiento del circuito llevando la punta lgica a los 3 posibles estados de un circuito lgico,0 lgico igual a 0V., 1 lgico igual a 5V. y Z alta impedancia o tercer estado igual a punta al aire o

    desconectada y proceda al llenando de la tabla 1.2.

    Figura 1.9 Esquemtico de punta lgica

    Estado punta

    lgica

    Voltaje de

    Entrada

    Estado

    Led Rojo

    Estado

    Led Verde

    Estado

    Led Amarillo

    0

    1

    Z

    Tabla 1.2 Tabla de valores del circuito de punta lgica

    7. Implemente el circuito de la figura 1.10 manteniendo el circuito anterior.

    Figura 1.10 Circuito de prueba

    8. Alimente el circuito 74LS125 con 5V. en terminal 14 y 0V. en la terminal 7.9. Compruebe la tabla de verdad del buffer empleando para ello el circuito de punta lgica armado en el punto 1.9.

    Figura 1.11 Hoja tcnica de circuito 74LS125

    5 V

    U1B

    74LS00

    4

    56

    U1A

    74LS00

    1

    23

    U1C

    74LS00

    9

    108

    U1D

    74LS00

    12

    1311

    D1 Led Rojo

    "1" Logico

    D2 Led Verde

    "0" Logico

    D3 Led Amarillo

    "Z" Tercer Estado

    R1

    1k

    R2

    1k

    R3

    0.47K

    R4

    0.47K

    Q1

    BC547A

    Punta de Prueba

    U1A

    74LS125A

    2 3

    1

    A1

    C1

    Y1

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    14/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 1 Herramientas de prueba para el sistema mnimo 5

    Cuestionario

    1. Explique el comportamiento de la compuerta lgica de tercer estado mostrada en la figura 1.4 considerando laentrada DIS.

    2. Explique el concepto de compuertas con salida de colector abierto incluyendo el diagrama de una compuertacomercial de este tipo.

    3. Explique el concepto de OR alambrada e indique a travs de un diagrama de conexiones la forma en que funciona.4. Explique porque se requiere que los circuitos de memoria y microprocesadores tengan salidas de tercer estado.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    15/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 2Generador de reloj para microprocesador 6

    Tema

    2.1 Las seales

    Objetivos

    El alumno implementar diferentes circuitos de temporizacin empleados en la generacin de seales digitales de relojpara sistemas basados en microprocesador.

    Introduccin

    Uno de los elementos que conforman el esquema de Von Neumann de un sistema digital que incluye un microprocesador,

    es el circuito de reloj. Este sistema es el encargado de proporcionar una seal digital con una frecuencia caractersticadefinida por el microprocesador en cuestin.

    Las seales de reloj de los microprocesadores tienen otras caractersticas importantes, tales como el ciclo de trabajo,

    definido como la relacin entre el tiempo que la seal de reloj se mantiene en estado alto ( th) y el periodo de la seal (T ),

    tal y como se muestra en la figura 2.1.

    [%] = 100=

    + 100

    Figura 2.1

    La seal digital generada por el sistema de reloj, acta como la seal de sincrona del microprocesador, el cual ejecuta las

    instrucciones del programa e interacta con los elementos que conforman al sistema tales como las memorias RAM y ROM

    y los puertos de entrada (I) y salida (O) en funcin de los cambios que realiza la seal de reloj, en la figura 2.2 se muestra el

    sistema de reloj dentro del esquema de Von Neumann.

    Todas las operaciones que realiza un microprocesador para ejecutar una instruccin o para activar un circuito, se ejecutan

    en sincrona con los pulsos de reloj proporcionados por el oscilador digital. Es por eso que todos los sistemas de

    microprocesador requieren de una base de tiempo sobre la cual trabajar.

    El conocimiento de las seales de reloj requeridas permite elaborar diagramas de tiempo bajo los cuales opera elmicroprocesador, haciendo posible sincronizar las seales del microprocesador con los tiempos de acceso, retardo o de

    control de sus perifricos. El parmetro ms simple en la temporizacin de la CPU es conocido como ciclo T, y es igual a un

    ciclo completo del sistema de reloj como el que se muestra en la figura 2.3.

    Laboratorio de MicroprocesadoresPrctica 2

    Generador de reloj para microprocesador

    T

    th tl

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    16/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 2Generador de reloj para microprocesador 7

    Reloj

    Microprocesador

    Memoria

    ROM

    (Programa)

    Bus de Datos

    Memoria

    RAM

    (Datos)

    Puertos de

    Entrada

    Puertos de

    Salida

    Bus de Direcciones

    Bus de Control

    Dispositivos Perifricos

    Figura 2.2 Reloj dentro del esquema de Von Neumann.

    Figura 2.3 Ciclo de reloj T

    En la figura 2.4 se muestra uno de los diagramas de tiempo empleados por el microprocesador Z80 para la realizacin del

    proceso de decodificar una instruccin almacenada en la memoria, como se puede observar, los cambios en todas las

    seales asociadas con el funcionamiento del microprocesador se llevan a cabo en sincrona con la seal de reloj (CLK).

    Figura 2.4 Ciclo fetch del microprocesador Z80.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    17/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 2Generador de reloj para microprocesador 8

    Circ uit o VCC GND

    74LS04 U1 14 7

    Circui to VCC GND

    74LS04 U1 14 7

    Una forma de generar la seal de reloj es emplear compuertas lgicas retroalimentadas, usando resistencias y capacitores.

    La figura 2.5 muestra un circuito que emplea compuertas lgicas inversoras.

    Figura 2.5 Oscilador con compuertas

    Para asegurar ms estabilidad en la frecuencia y para acceder a frecuencias ms elevadas, es comn emplear cristales de

    cuarzo como elementos de control de la frecuencia de oscilacin. La figura 2.6 A muestra el smbolo de un cristal de cuarzo

    piezoelctrico y la figura 2.6 B muestra el circuito equivalente.

    (A) (B)

    Figura 2.6

    En la figura 2.7 se observa un circuito que utiliza un cristal de cuarzo de 4 MHz para fijar la frecuencia de la oscilacin, este

    tipo de circuito garantiza oscilaciones estables asociadas con la frecuencia del cristal.

    Figura 2.7 Oscilador con cristal de cuarzo

    Dadas las elevadas frecuencias a las que trabajan algunos microprocesadores, se requieren circuitos que generen seales

    confiables y adecuadas a ciertas caractersticas especficas. Esto ha llevado a que algunos microprocesadores tengan, entre

    su familia de circuitos complementarios un C.I. temporizador construido especficamente para l. Tal es el caso delmicroprocesador 8080 de Intel, el cual usa como circuito temporizador al 8224, un C.I. que proporciona dos fases de reloj,

    una seal de READY en combinacin con el segundo reloj y la propia seal de READY.

    Otro circuito es el 8284, tambin de Intel, el cual proporciona la temporizacin y dos seales de control para los

    microprocesadores 8086 y 8088. Un circuito que lo emplea se muestra en la figura 2.8.

    74LS04U1A

    1 2

    74LS04U1B

    3 4

    10K

    R2

    10K

    R1

    0.1uFC1

    74LS04U1C

    5 6Reloj

    74LS04U1A

    1 2

    74LS04U1B

    3 4

    1K

    R2

    1K

    R1

    74LS04U1C

    5 6Reloj

    4 MHz

    XTAL

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    18/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 2Generador de reloj para microprocesador 9

    Figura 2.8

    Actividades Previas a la Prctica

    1. EI alumno deber realizar la lectura de la prctica de laboratorio.2. Realizar la simulacin del circuito de la figura 2.5. Considere que la oscilacin del circuito se basa en el ruido y retrasos

    en las seales del circuito y por lo tanto puede requerirse de un tiempo de espera para que la seal aparezca en elosciloscopio del simulador.

    3. Traer el circuito armado.Material

    2 Resistencias de 10 K, W.

    1 Capacitor de 0.01 uF.

    2 Capacitor de 0.1 uF

    1 Capacitor de 470 uF

    1 Circuito integrado 74LS04 o 7404

    1 Cristal de cuarzo de 4 MHz.

    Equipo

    1 Fuente de alimentacin de C.D.

    1 Osciloscopio.

    1 Tableta de conexiones

    1 Multmetro

    Procedimiento Experimental

    1. Arme cada uno de los 2 circuitos de las figuras 2.5 y 2.7 polarizando los circuitos integrados a un voltaje de 5 V.2. El circuito de la figura 2.5 se utilizar como el primer elemento del sistema con microprocesador y por lo tanto deber

    mantenerse armado para las pruebas posteriores, en la figura 2.9 se muestra la conexin sobre la protoboard.

    3. Con el osciloscopio observe la seal de salida de cada uno de los circuitos (terminal 6) y mida los valores indicados en latabla 2.1 y dibuje las formas de onda obtenidas para cada uno de los dos circuitos.

    Circuito Frecuencia (f) Periodo (T) Tiempo en alto (th) Tiempo en bajo (tl)

    Fig 3.5

    Fig 3.7

    Tabla 2.1

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    19/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 2Generador de reloj para microprocesador 10

    Figura 2.9 Oscilador armado en protoboard

    4.

    Calcule el ciclo de trabajo (duty cycle) de las seales de reloj obtenidas (que porcentaje del ciclo completo se encuentrala seal activa en alto).

    5. Cambie el capacitor de 0.1 F a los valores de 0.01 F y 470 F e identifique las variaciones que se presentan en la sealde reloj del circuito de la figura 2.5.

    Cuestionario

    1. Qu funcin realiza la compuerta inversora en la salida del circuito.2. Investigue el circuito 8284 dando la configuracin de pines y dando una breve anotacin funcional de sus terminales.3. Mencione otros circuitos temporizadores (integrados o discretos) de uso general no cubiertos en la presente prctica.4. Complemente la informacin dada en la introduccin sobre cristales, acerca de la determinacin de la frecuencia de

    oscilacin.

    5. Que condiciones de funcionamiento tiene el reloj de salida proporcionado por el circuito 8284.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    20/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 3Circuito de auto reset para microprocesador 11

    Tema

    2.4 El funcionamiento interno: los diagramas de estado

    Objetivos

    Implementar un circuito de auto reset para inicializar el funcionamiento del microprocesador Z80. Comprobar las condiciones que presenta el P Z80 al insertar la seal de reset.

    Introduccin

    En los microprocesadores la seal de reset se utiliza para llevar al microprocesador a un estado conocido. La seal de

    reset inicializa al P Z80 de forma interna del siguiente modo:

    Limpia el Flip Flop asociado con las interrupciones mascarables Limpia el registro contador de programa (PC) y los registros de interrupcin (I) y de refresco de memoria (R) Selecciona el modo 0 de interrupcin mascarable. Deshabilita las interrupciones mascarables.

    De forma externa la seal de reset se refleja en el estado de algunas de sus seales como se indica:

    El bus de direcciones y de datos se pone en alta impedancia mientras la seal de reset est activa. Todas las seales de salida del bus de control se mantienen inactivas.

    Adems para que la inicializacin sea exitosa, la seal de reset debe mantenerse activa en bajo por lo menos 3 ciclos

    completos de reloj.

    Para la realizacin de un circuito de reset, se emplea una malla RC que proporciona un 0 lgico al alimentar al sistema

    puesto que el capacitor est originalmente descargado y despus de 5(constantes de tiempo), el capacitor es cargado

    al 99.3% del voltaje de alimentacin de 5V, lo que produce que la seal de reset pase a inactiva. Para lograr la

    especificacin de 3 ciclos completos de reloj para una aplicacin correcta del reset, se requiere que el voltaje de carga

    del capacitor se mantenga por debajo del voltaje V IL considerado como 0 lgico por un tiempo lo suficientemente

    largo para que transcurran 3 ciclos de reloj del microprocesador.

    5V

    VIL= 0.8V

    5

    Reloj

    t=0.174 Figura 3.1 Diagrama de tiempo para el reset del microprocesador.

    Laboratorio de MicroprocesadoresPrctica 3

    Circuito de auto reset para microprocesador

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    21/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 3Circuito de auto reset para microprocesador 12

    La ecuacin que describe comportamiento de carga del capacitor esta definida por:

    () = 5 (1 )y el tiempo necesario para alcanzar el valor de VIL= 0.8 V queda definido por:

    = 1 0.85

    Si se cumplen estas condiciones entonces el microprocesador se auto inicializar al alimentar al circuito completo. Sin

    embargo al estar el microprocesador en su funcionamiento normal se requiere ocasionalmente resetear al

    microprocesador y eso se puede lograr introduciendo un switch en paralelo a las terminales del capacitor descargndolo

    de forma directa y produciendo un estado bajo durante todo el tiempo que el switch permanezca cerrado y la seal de

    reset regresar al estado de inactividad (5V) al cargarse nuevamente al capacitor despus de desconectar el switch.

    En esta prctica se integrarn el circuito de reloj, reset y microprocesador del esquema de Von Neumann como se

    muestra en la figura 3.2.

    Reloj

    Microprocesador

    Memoria

    ROM(Programa)

    Bus de Datos

    Memoria

    RAM(Datos)

    Puertos deEntrada Puertos deSalida

    Bus de Direcciones

    Bus de Control

    Dispositivos Perifricos

    Figura 3.2 Reloj, microprocesador y reset en el esquema de Von Neumann.

    Actividades Previas a la Prctica

    1. EI alumno deber realizar la lectura de la prctica de laboratorio.2. Obtenga el valor de tiempo terico necesario para alcanzar el valor V ILutilizando la frmula que describe la carga

    del capacitor.

    3. Traer el circuito armadoMaterial

    1 Capacitor de 0.1 uF

    1 Resistencia de 1K a W.

    1 Switch Push Button normalmente abierto

    1 Diodo 1N4001

    1 Microprocesador Z80

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    22/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 3Circuito de auto reset para microprocesador 13

    1N4001D1

    1kR3

    0.1uF

    C2

    +5V74LS04U1A

    1 2

    +5V

    74LS04U1B

    3 4

    10K

    R2

    10K

    R1

    0.1uFC1 U2 Z80 CPU

    A030

    A131

    A232

    A333

    A434

    A535

    A636

    A737

    A8

    38

    A939

    A1040

    A111

    A122

    A133

    A144

    A155

    WAIT24

    INT16

    NMI17

    RST26

    BUSRQ25

    BUSAK23

    CLK6

    IORQ20

    HALT18

    D014

    D115

    D212

    D38

    D47

    D59

    D610

    D713

    M127

    MREQ19

    RD21

    REFSH28

    WR22

    74LS04U1C

    5 6

    SW1RESET

    Circui to VCC GND

    74LS04 U1 14 7

    Z80 CPU U2 11 29

    Circuito de reloj implementado en la prctica anterior

    Equipo

    1 Fuente de C.D.

    1 Osciloscopio

    1 Multmetro

    1 Punta lgica para prueba de tercer estado

    1 Circuito de leds de prueba

    Procedimiento Experimental

    1. Implemente el circuito de la figura 3.3 considerando que ya se tiene armado el circuito de reloj y adicionesolamente el circuito de reset y el microprocesador Z80.

    Figura 3.3

    2. Realiza la conexin en la protoboard utilizando como referencia la fotografa de la figura 3.4

    Figura 3.4

    3. Observe la seal de reset en la salida del circuito y compruebe su comportamiento al presionar y liberar el botn dereset (SW1).

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    23/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 3Circuito de auto reset para microprocesador 14

    4. Grafique la seal de reset indicando los parmetros de voltaje y tiempo, para realizar esta operacin puede utilizarla funcin de Stop o captura de imagen que poseen los osciloscopios digitales.

    5. Empleando el circuito de punta lgica compruebe que mientras est presionado el botn de reset, ambos buses dedirecciones y de datos permanecen en tercer estado.

    6. Compruebe el estado de las seales: BUSAK , HALT , M1 , REFRESH , MREQ , IORQ , RD y WR mientras la sealde reset est activa (0V) empleando el circuito de leds.

    7. Debido a que este sistema an no contiene una memoria ROM de programa, una vez que se libera el botn dereset, el microprocesador intenta leer la direccin 0000H, pero al estar las terminales del bus de datos al aire,

    entonces la lectura es tericamente FFH o basura de forma real, por lo tanto el microprocesador no puede ejecutar

    ningn programa lgico.

    8. Aun bajo estas condiciones, es posible probar algunas de las seales de salida del bus de control, tales como:M1 , REFRESH , MREQ , IORQ , RD y WR empleando el circuito de leds y el osciloscopio.

    9. Observe el comportamiento de las seales anteriores, con el circuito de reset en su estado inactivo (5V).Cuestionario

    1. Indique el estado de los registros del microprocesador Z80 al insertar la seal de reset activa en 0 V.2. Investigue las condiciones que se producen al insertar la seal de reset en el microprocesador 8086 de Intel y en el

    microprocesador Intel Pentium 4. (Checar en internet Manual Pentium 4).

    3.

    Describa el funcionamiento de las seales M1 , REFRESH , MREQ , IORQ , RD y WR del microprocesador Z80.4. Determine cual sera la frecuencia de reloj mnima para poder realizar correctamente el proceso de auto reset,calclelo en funcin de la ecuacin de carga del capacitor.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    24/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 4Memoria EEPROM o memoria de programa 15

    Tema

    3.2 Estructura de los sistemas de memoria

    Objetivos

    El alumno realizar la conexin de una memoria EEPROM a un microprocesador Z80. El alumno programar una GAL para generar el circuito decodificador de direcciones. El alumno crear y probar un programa de prueba en lenguaje ensamblador que ser ejecutado en el

    microprocesador Z80.

    Introduccin

    Los microprocesadores son circuitos de muy alta escala de integracin que son capaces de ejecutar una serie de cdigos

    binarios proporcionados en secuencia sobre sus terminales de datos y controlados por las terminales de direcciones y

    por las seales de control, pero dichos cdigos que conforman un programa, no pueden almacenarse dentro del

    microprocesador y por lo tanto en los sistemas de microprocesadores es necesario aadir un sistema de memoria no

    voltil que contenga al programa.

    Esta memoria de programa es tpicamente una memoria de solo lectura o memoria ROM (Read Only Memory) que es

    programada previamente en forma independiente del sistema de microprocesador, dentro de ella y en cada una de sus

    localidades se almacena un dato binario que representa el cdigo de mquina de una instruccin en lenguaje

    ensamblador o parte del cdigo de mquina de una instruccin mayor.

    A esta memoria se le denomina la memoria de programa.

    Reloj

    Microprocesador

    MemoriaROM

    (Programa)

    Bus de Datos

    MemoriaRAM

    (Datos)

    Puertos de

    Entrada

    Puertos de

    Salida

    Bus de Direcciones

    Bus de Control

    Dispositivos Perifricos

    Figura 4.1 Memoria de programa ROM en el esquema de Von Neumann

    Laboratorio de MicroprocesadoresPrctica 4

    Memoria EEPROM o memoria de programa

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    25/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 4Memoria EEPROM o memoria de programa 16

    Utilizando las seales de sus buses, los microprocesadores leen, trasladan, decodifican y ejecutan cada uno de los

    cdigos contenidos en la memoria ROM y con estas acciones el sistema de microprocesador es capaz de realizar la

    ejecucin lgica de un programa en lenguaje ensamblador.

    En esta prctica se realizar la conexin de una memoria EEPROM AT28C16, figura 4.2, con una capacidad de (2K x 8)

    que se utilizar para el almacenamiento de los programas de prueba del sistema de microprocesador.

    Figura 4.2 Memoria EEPROM AT28C16

    Adems se comprobar el funcionamiento de un programa de prueba muy simple que nos permita asegurar que el

    sistema de microprocesador est decodificando correctamente los cdigos de mquina de las instrucciones

    almacenadas en la EEPROM.

    El programa de prueba realizar la carga del acumulador (A) del microprocesador Z80 con el valor de 00H en 8 bits y lo

    trasladar hacia el puerto 05H (el cul no existe fsicamente), posteriormente se incrementar el valor del acumulador y

    se realizar un ciclo infinito de envi al puerto 05H, este programa producir un contador binario natural ascendente en

    el bus de datos del microprocesador, pero debido a que el sistema no cuenta an con puertos, el dato solo ser visible

    en el bus de datos pero en combinacin con los cdigos de mquina que son trasladados desde la memoria EPROM

    hacia el microprocesador.

    Figura 4.3 Mapa de memoria y asignacin de bits de direccionamiento

    16 bits

    5 bits 11 bits

    Posicin Localidad

    EEPROMAT28C16

    2K x 8

    64K

    65536 localidades

    de memoria

    8 bits

    0000H

    07FFH

    SIN USAR

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    26/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 4Memoria EEPROM o memoria de programa 17

    A11

    A12

    /RD

    /MREQ

    /CE_EEPROM1

    2

    3

    4

    5

    67

    8

    A15

    A13

    A14

    En la figura 4.3 se muestra el mapa de memoria del microprocesador Z80 con un tamao de 64K x 8 y la posicin que

    ocupar la EEPROM dentro del mapa, desde la direccin 0000H hasta la 07FFH y la asignacin de los bits de

    direccionamiento.

    La memoria se conectar a partir de la direccin 0000H ya que al insertar el pulso de RESET, este microprocesador

    inicializa el valor del contador de programa (PC) a cero y es en ese lugar donde debe estar el cdigo de mquina de laprimera instruccin. Este microprocesador emplea 16 bits para el direccionamiento de la memoria, de los cuales se

    emplearn los 11 bits menos significativos para seleccin de la localidad interna de la memoria y los 5 bits ms

    significativos se usarn para la decodificacin de la posicin de la memoria EEPROM dentro del mapa de memoria.

    Para la activacin de la memoria en el instante correcto se debern considerar adems de los cinco bits de direcciones

    (A15 A11) = 00000, las seales MREQ = 0 y RD = 0, las que en conjunto generarn la seal de activacin CE = 0 de la

    memoria, esto se realizar a travs de una compuerta OR de 7 entradas como se muestra en la figura 4.4 e

    implementada dentro de un dispositivo lgico programable GAL22V10D .

    Figura 4.4 Circuito de activacin de la memoria EEPROM

    El sistema consta de un dispositivo GAL22V10D como el mostrado en la figura 4.5 que se emplear para implementar el

    sistema de decodificacin de direcciones y permitir as realizar la activacin de la memoria EEPROM en la posicin y

    localidad correcta.

    Figura 4.5 Circuito para la implementacin del decodificador de direcciones.

    Actividades Previas

    1. EI alumno deber realizar la lectura de la prctica de laboratorio.2. El alumno programar la memoria AT28C16 con el cdigo de mquina mostrado en la figura 4.11, considerando

    que en cada localidad debe grabarse un byte.

    3. El alumno programar el dispositivo lgico programable (PLD) GAL22V10D con la funcin de la compuerta OR de 7entradas mostrada en la figura 4.12.

    4. Traer el circuito armado.Material

    1 Sistema mnimo con microprocesador, circuito de reloj y circuito de reset

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    27/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 4Memoria EEPROM o memoria de programa 18

    1N400

    1

    D1

    1k

    R3

    0.1uF

    C2

    UniversidadNacionalAutnomadeMxico

    FacultaddeEstudiosSuperioresCuautitln

    SistemadeMicro

    procesadorZ80

    M.enTI.JorgeBuendaGmez

    +5V

    U

    4

    AT28C16

    A

    0

    8

    A

    1

    7

    A

    2

    6

    A

    3

    5

    A

    4

    4

    A

    5

    3

    A

    6

    2

    A

    7

    1

    A

    8

    23

    A

    9

    22

    A

    10

    19

    D0

    9

    D1

    10

    D2

    11

    D3

    13

    D4

    14

    D5

    15

    D6

    16

    D7

    17

    C

    E

    18

    O

    E

    20

    W

    E

    21

    +5V

    U3

    GAL22V10

    I/CLK

    1

    I

    2

    I

    3

    I

    4

    I

    5

    I

    6

    I/O

    14

    I/O

    15

    I/O

    16

    I/O

    17

    I/O

    19

    I/O

    20

    I/O

    21

    I/O

    22

    I/O

    18

    I/O

    23

    I

    7

    I

    8

    I

    9

    I

    10

    I

    11

    I

    13

    74LS04

    U1A

    1

    2+5V

    Circuito

    VCC

    GND

    74LS0

    4

    U1

    14

    7

    Z80CP

    U

    U2

    11

    29

    GAL22

    V10D

    U3

    24

    12

    AT28C

    16

    U4

    24

    12

    74LS04

    U1B

    3

    4

    10K

    R2

    10K

    R1

    0.1uF

    C1

    U2

    Z80CPU

    A0

    30

    A1

    31

    A2

    32

    A3

    33

    A4

    34

    A5

    35

    A6

    36

    A7

    37

    A8

    38

    A9

    39

    A10

    40

    A11

    1

    A12

    2

    A13

    3

    A14

    4

    A15

    5

    WAIT

    24

    INT

    16

    NMI

    17

    RST

    26

    BUSRQ

    25

    BUSAK

    23

    CLK

    6

    IORQ

    20

    HALT

    18

    D0

    14

    D1

    15

    D2

    12

    D3

    8

    D4

    7

    D5

    9

    D6

    10

    D7

    13

    M1

    27

    MREQ

    19

    RD

    21

    REFSH

    28

    WR

    22

    74LS04

    U1C

    5

    6

    SW1

    RESE

    T

    1 Memoria AT28C16 EEPROM de 2K x 8

    1 Circuito integrado GAL22V10D

    1 Capacitor de 470 uF.

    Procedimiento experimental

    1. Implemente el circuito mostrado en la figura 4.6 considerando que ya se tienen armados los circuitos de reloj yreset y solo debern adicionarse las memorias EEPROM AT28C16 y el dispositivo lgico programable GAL22V10D.

    Figura 4.6

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    28/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 4Memoria EEPROM o memoria de programa 19

    2. La figura 4.7 muestra el circuito armado en 2 protoboard.

    Figura 4.7 Circuito implementado en 2 Protoboard

    3. Utilizando el software Z80 Simulator IDE, cuyo icono se muestra a continuacin, seleccione la pestaaTools/Assembler para abrir la ventana de edicin segn se muestra en la figura 4.8.

    Figura 4.8 Icono y pantallas del software Z80 Simulator IDE.

    4. Edite el programa en lenguaje ensamblador mostrado en la figura 4.9 y slvelo con el nombre prac04.asm

    Figura 4.9 Programa de conteo empleando el acumulador y el puerto 05H

    5. Active la opcin para generar el cdigo hexadecimal del programa y proceda a ensamblarlo para obtener el cdigode mquina, tal y como se muestra en la figura 4.10, con esta opcin se generarn 3 archivos adicionales: prac04.lst

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    29/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 4Memoria EEPROM o memoria de programa 20

    que contiene un listado de cdigos e instrucciones, prac04.obj que sirve para hacer la simulacin y prac04.hex que

    se utiliza para hacer la programacin de la memoria EEPROM.

    Figura 4.10 Ensamblado del programa

    6.

    El cdigo de mquina generado se muestra en la figura 4.11, indicndose a travs del recuadro en rojo la localidadde memoria, el cdigo de mquina y la instruccin correspondiente.

    Figura 4.11 Localidad de memoria y cdigo de mquina del programa

    7. Programe la memoria EEPROM en el programador universal empleando el archivo prac04.hex que se gener en elpaso anterior y se almacen en el mismo subdirectorio.

    8. Escriba la funcin decodificadora de direccin para la habilitacin de la memoria EEPROM en un proyecto deISPLEVER tal y como se muestra en la figura 4.12.

    9. Programe la GAL con el archivo P04_Contador.jed generado con ISPLEVER y pruebe el sistema completo paracomprobar la presencia de los datos y las instrucciones en el bus de datos del microprocesador, para ello deber

    conectar el circuito de leds y cambiar el capacitor del reloj por un capacitor de 470 uF, lo cual reducir la velocidad

    del reloj y permitir observar los cambios del bus de datos.

    10. Genere una tabla con los valores que se presentan en el bus de datos y compruebe que son los cdigos de lasinstrucciones del programa. Deber notar que despus del cdigo de la instruccin OUT (05H),A con cdigo de

    mquina D3, 05, aparecer el valor enviado al puerto intercalado con los cdigos de las instrucciones, el cul se ir

    incrementando cada vez que se haga un ciclo.

    11. Observe la seal de activacin de la memoria EEPROM y dibjela.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    30/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 4Memoria EEPROM o memoria de programa 21

    Figura 4.12 Archivo vhd para el proyecto del decodificador de direccin

    Cuestionario

    1. Calcule el tiempo de ejecucin de un ciclo completo del programa de la figura 4.9 considerando un reloj de 4MHz. yla duracin de cada una de las instrucciones que intervienen, especificada en las tablas de instrucciones del

    microprocesador Z80.

    2. Disee un programa en lenguaje ensamblador que genere un conteo ascendente - descendente en 8 bits ycomprubelo empleando el simulador, entregue los resultados de la simulacin a su profesor de laboratorio.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    31/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 22

    Tema

    8.3. Interfaces integrados: PIA, PIO, PPI y similares

    Objetivos

    El alumno realizar la conexin de un circuito de interfaz perifrica programable (PPI 8255) a un

    microprocesador Z80.

    El alumno programar una GAL22V10D para generar el decodificador de direcciones para el circuito de puertos

    8255 y para generar la seal de RESET.

    El alumno ensamblar y probar un programa que genera dos patrones de corrimiento de 8 leds conectados

    en el puerto A del circuito PPI 8255, seleccionando que patrn se emplea en funcin de un bit de entrada delpuerto B.

    Introduccin

    Otro elemento en el esquema de Von Neumann son los puertos de entrada /salida o (input / output) los cuales le

    permiten al microprocesador conectarse con los dispositivos perifricos y de esta manera trasladar informacin hacia el

    microprocesador o del microprocesador hacia los dispositivos perifricos. La figura 5.1 nos muestra estos elementos.

    Reloj

    Microprocesador

    Memoria

    ROM

    (Programa)

    Bus de Datos

    Memoria

    RAM

    (Datos)

    Puertos de

    Entrada

    Puertos de

    Salida

    Bus de Direcciones

    Bus de Control

    Dispositivos Perifricos

    Figura 5.1 Puertos de entrada /salida (I / O) en el esquema de Von Neumann

    Laboratorio de MicroprocesadoresPrctica 5

    Puertos de entrada / salida (Input / Output)

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    32/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 23

    Los puertos pueden ser implementados con registros de flip- flops o con circuitos integrados programables que

    contienen todos los elementos necesarios para interfazar de forma correcta a los dispositivos perifricos, ahorrando

    espacio y complejidad a las conexiones.

    En esta prctica emplearemos el circuito integrado 8255 que contiene 3 puertos programables de 8 bits cada uno,

    denominados puerto A, puerto B y puerto C y un puerto de control de 8 bits con el cual se configura el funcionamiento

    del circuito. Este circuito es un integrado PPI 8255 como el mostrado en la figura 5.2

    8

    8

    8

    A

    B

    CH

    Puerto de

    Control

    4

    D0-7

    A1

    A0

    RESET

    Port A

    PA0-7

    Port BPB0-7

    Port C

    PC4-7

    PC0-3

    /RD

    /WR

    /CS

    Vcc (+5V)

    GND (0V)

    CL 4

    Figura 5.2 Circuito PPI 8255

    Este circuito pertenece a la familia de circuitos desarrollados por INTEL para el soporte de sus microprocesadores 80XXX

    y por lo tanto ya incluye las seales para el control de lectura y escritura, as como para realizar una inicializacin

    externa y solo requieren la activacin correcta para las direcciones de los 3 puertos de usuario y el puerto de control. La

    figura 5.3 muestra la asignacin de terminales del PPI 8255.

    Figura 5.3 Asignacin de terminales del PPI 8255

    Este dispositivo contiene 4 puertos; 3 de usuario y uno de control y por lo tanto solo necesita de 2 lneas de direcciones

    (A1 y A0) para definir el puerto al que deber tener acceso segn la tabla 5.1.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    33/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 24

    A1 A0 Puerto Direccin

    0 0 Puerto A 00H

    0 1 Puerto B 01H

    1 0 Puerto C 02H1 1 Puerto de Control 03H

    Tabla 5.1 Asignacin de puertos

    En la figura 5.4 se muestra el mapa de puertos correspondiente al sistema de microprocesador, donde se observa que la

    posicin del circuito PPI 8255 ser en las primeras cuatro posiciones del mapa (puertos 00H, 01H, 02H y 03H) puesto que

    no hay ningn otro puerto conectado y no se producirn conflictos.

    Figura 5.4 Mapa de Puertos

    Para realizar la conexin se deber implementar una funcin que active la seal de CE del PPI y adems genere la seal

    de RESET del circuito de puertos como se muestra en la figura 5.5.

    Figura 5.5 Circuito decodificador e inversor.

    Para realizar la prueba de funcionamiento de todo el sistema se utilizar un programa que generar dos patrones de

    corrimiento de 8 bits en el puerto A como se muestra en la f igura 5.6.

    Figura 5.6 Patrones de corrimiento en 8 leds del puerto A

    WR

    RD

    IORQ

    /CE_PPI

    A4

    A3

    A2

    U?

    OR5

    1

    2

    3

    45

    6

    RST

    U?A

    74LS04

    1 2RESET

    U?

    XNOR2

    1

    2

    3

    4 x 8

    PPI 8255

    256 puertos

    8 bits

    00H

    03H

    SIN USAR

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    34/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 25

    La seleccin de que patrn se visualizar se determinar a travs del bit PB0 del PPI, insertndole 0V 5V.

    Para reducir la velocidad de encendido de los leds, se deber incrementar el valor del capacitor C1 del oscilador de

    seal cuadrada a 1uF o a 10 uF.

    Este programa no permite la utilizacin de subrutinas debido a que no se cuenta an con memoria SRAM y no se puede

    establecer la localidad donde se localizar la pila y por lo tanto el programa repite 8 veces una serie de instrucciones de

    consumo de tiempo debido a que el programa debe ser solo secuencial.

    Para configurar el PPI 8255 con el puerto A de salida en modo 0, el puerto B de entrada en modo 0 y el puerto C de

    salida en modo 0, se deber escribir la palabra de control (82H) de 8 bits en el puerto 03H de acuerdo a la siguiente

    asignacin mostrada en la figura 5.7.

    Figura 5.7 Asignacin de bits para la configuracin del PPI 8255

    Actividades Previas

    1. EI alumno deber realizar la lectura de la prctica de laboratorio.

    2. El alumno programar la memoria AT28C16 con el cdigo de mquina generado por el programa mostrado en la

    figura 5.9, considerando que en cada localidad debe grabarse un byte.

    3. El alumno programar el dispositivo lgico programable (PLD) GAL22V10D con la funcin mostrada en la figura

    5.10.

    4. Traer el circuito armado

    Material

    1 Sistema mnimo con Microprocesador Z80, circuito de reloj, circuito de reset, memoria EEPROM AT28C16 y

    decodificador de direcciones con la GAL22V10D.

    1 Circuito Integrado PPI 8255.

    1 Capacitor de 1uF.

    1 Capacitor de 10 uF.

    Equipo

    1 Fuente de C.D.

    1 Osciloscopio

    1 Multmetro

    1 Punta lgica para prueba de tercer estado

    1 Circuito de Leds de prueba

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    35/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 26

    Procedimiento Experimental

    1. Implemente el circuito mostrado en la figura 5.11 considerando que ya se tiene armado el sistema mnimo de

    microprocesador con la memoria EEPROM y solo deber adicionarse el circuito integrado PPI 8255.

    2. Utilice la figura 5.8 para guiarse en la implementacin fsica.

    Figura 5.8 Sistema mnimo con puertos de entrada salida

    3. Edite el programa en lenguaje ensamblador que se muestra en la figura 5.9 y obtenga el cdigo de mquina.

    Figura 5.9 Programa para los corrimientos en el puerto A. (Parte 1).

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    36/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 27

    Figura 5.9 Programa para los corrimientos en el puerto A. (Parte 2).

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    37/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 28

    Figura 5.9 Programa para los corrimientos en el puerto A. (Parte 3).

    4. Programe la memoria EEPROM en el programador universal con el archivo P05 Registro de Luces.hex.

    5. Escriba la funcin habilitadora de la seal CE para el circuito PPI 8255 y un inversor para la seal de RESET en un

    proyecto de ISPLEVER tal y como se muestra en la figura 5.10.

    Figura 5.10 Programa de decodificacin del sistema mnimo

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    38/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 29

    6. Programe la GAL con el archivo con terminacin .JED generado en el programa ISPLEVER y pruebe el sistema

    completo.

    7. Conecte el circuito probador de 8 leds en el puerto A del PPI 8255 y la seal que controla que secuencia de leds que

    encender en el bit PB0 y compruebe el funcionamiento de ambos corrimientos.

    Cuestionario

    1. Calcule el tiempo requerido por el programa para ejecutarse, tomando en cuenta el nmero de ciclos de reloj

    necesarios para cada una de las instrucciones.

    2. Determine la palabra de control necesaria para configurar el PPI con puerto A bidireccional en modo 2 , puerto B de

    salida en modo 0 y los bits restantes del puerto C como salida.

    3. Explique el funcionamiento del programa empleado en este sistema.

    4. Justifique la utilizacin de las ecuaciones de decodificacin del sistema empleadas en la GAL.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    39/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 5 Puertos de entrada / salida (Input / Output) 30

    U2

    Z80CPU

    A0

    30

    A1

    31

    A2

    32

    A3

    33

    A4

    34

    A5

    35

    A6

    36

    A7

    37

    A8

    38

    A9

    39

    A10

    40

    A11

    1

    A12

    2

    A13

    3

    A14

    4

    A15

    5

    WAIT

    24

    INT

    16

    NMI

    17

    RST

    26

    BUSRQ

    25

    BUSAK

    23

    CLK

    6

    IORQ

    20

    HALT

    18

    D0

    14

    D1

    15

    D2

    12

    D3

    8

    D4

    7

    D5

    9

    D6

    10

    D7

    13

    M1

    27

    MREQ

    19

    RD

    21

    REFSH

    28

    WR

    22

    74LS04

    U1C

    5

    6

    SW1

    RESE

    T

    Circuito

    VCC

    GND

    7

    4LS04

    U1

    14

    7

    Z

    80CPU

    U2

    11

    29

    G

    AL22V10D

    U3

    24

    12

    A

    T28C16

    U4

    24

    12

    6

    116SRAM

    U5

    24

    12

    P

    PI8255

    U6

    26

    7

    1N4001

    D1

    1k

    R3

    0.1uF

    C2

    UniversidadNacionalAut

    nomadeMxico

    FacultaddeEstudiosSup

    erioresCuautitln

    SistemadeMicroprocesadorZ80

    M.enTI.JorgeBuendaG

    mez

    +5v

    U4

    AT28C16

    A0

    8

    A1

    7

    A2

    6

    A3

    5

    A4

    4

    A5

    3

    A6

    2

    A7

    1

    A8

    23

    A9

    22

    A10

    19

    D0

    9

    D1

    10

    D2

    11

    D3

    13

    D4

    14

    D5

    15

    D6

    16

    D7

    17

    CE

    18

    OE

    20

    WE

    21

    +5V

    U3

    GAL22V10

    I/CLK

    1

    I

    2

    I

    3

    I

    4

    I

    5

    I

    6

    I/O

    14

    I/O

    15

    I/O

    16

    I/O

    17

    I/O

    19

    I/O

    20

    I/O

    21

    I/O

    22

    I/O

    18

    I/O

    23

    I

    7

    I

    8

    I

    9

    I

    10

    I

    11

    I

    13

    74LS04

    U1A

    1

    2+5v

    U6

    8255

    D0

    34

    D1

    33

    D2

    32

    D3

    31

    D4

    30

    D5

    29

    D6

    28

    D7

    27

    RD

    5

    WR

    36

    A0

    9

    A1

    8

    RESET

    35

    CS

    6

    PA0

    4

    PA1

    3

    PA2

    2

    PA3

    1

    PA4

    40

    PA5

    39

    PA6

    38

    PA7

    37

    PB0

    18

    PB1

    19

    PB2

    20

    PB3

    21

    PB4

    22

    PB5

    23

    PB6

    24

    PB7

    25

    PC0

    14

    PC1

    15

    PC2

    16

    PC3

    17

    PC4

    13

    PC5

    12

    PC6

    11

    PC7

    10

    74LS0

    4

    U1B

    3

    4

    10k

    R2

    10k

    R1

    0.1uF

    C1

    Figura 5.11 Sistema mnimo con puertos de entrada

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    40/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 6 Memoria SRAM o memoria de datos 31

    Tema

    3.2 Estructura de los sistemas de memoria

    Objetivos

    El alumno realizar la conexin de un circuito de memoria SRAM 6116 al sistema de microprocesador Z80 El alumno programar una GAL22V10D para generar el decodificador de direcciones para la memoria SRAM. El alumno crear un programa que utilice subrutinas y el almacenamiento de datos en la memoria SRAM.

    Introduccin

    El siguiente elemento en el esquema de Von Neumann es la memoria SRAM o memoria de datos, la cual se empleadentro del sistema mnimo para poder almacenar datos binarios que pueden ser empleados por el procesador para

    realizar sus operaciones o simplemente como almacenamiento de informacin en forma de tablas. Esta memoria debe

    realizar las funciones de lectura y escritura, es decir que debe ser memoria RWM (Read Write Memory), aunque

    tpicamente se le conoce como memoria RAM, aun cuando el concepto RAM se refiere al mtodo de acceso y no al tipo

    de operaciones posibles, la figura 6.1 nos muestra este elemento.

    Reloj

    Microprocesador

    Memoria

    ROM

    (Programa)

    Bus de Datos

    Memoria

    RAM

    (Datos)

    Puertos de

    Entrada

    Puertos de

    Salida

    Bus de Direcciones

    Bus de Control

    Dispositivos Perifricos

    Figura 6.1 Memoria RAM en el esquema de Von Neumann

    Laboratorio de MicroprocesadoresPrctica 6

    Memoria SRAM o memoria de datos

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    41/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 6 Memoria SRAM o memoria de datos 32

    La memoria de datos se emplear para el almacenamiento de la informacin del usuario (variables, tablas, caracteres,

    etc.) y para el establecimiento de la pila o Stack necesaria para la ejecucin de las subrutinas que se puedan incluir en los

    programas en lenguaje ensamblador.

    La SRAM tiene la caracterstica de ser una memoria voltil y esttica y por lo tanto mantiene su informacin mientras el

    circuito est alimentado elctricamente sin requerir de refresco de memoria. La DRAM es voltil y dinmica, por lo tanto

    si requiere de refresco de memoria peridico. Para la implementacin de este sistema emplearemos memoria SRAM

    debido a que no requiere del circuito de refresco y reduce el tamao del sistema.

    Para la implementacin de este elemento utilizaremos una memoria SRAM 6116 con capacidad de 2k x 8 como la que se

    muestra en la figura 6.2.

    Figura 6.2 Memoria SRAM 6116 de 2k x 8

    Esta conexin requiere la modificacin de las funciones de Boole establecidas dentro de la GAL para incluir la

    caracterstica de activacin de la memoria SRAM.

    Figura 6.3 Posicin de la memoria SRAM dentro del mapa de memoria

    EEPROM

    AT28C16

    2K x 8

    64K

    65536 loc alidades

    de memoria

    8 bits

    0000H

    07FFH

    SRAM

    6116

    2K x 8

    3000H

    37FFH

    SIN USAR

    SIN USAR

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    42/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 6 Memoria SRAM o memoria de datos 33

    La direccin de memoria donde se localizar la SRAM debe seleccionarse por encima del espacio ocupado por la

    memoria EEPROM que fue conectada a partir de la localidad 0000H y hasta la direccin 07FFH (2K x 8), la ubicacin de la

    memoria SRAM se establecer en el valor 3000H, el cual, como podemos observar no es consecutivo a la memoria

    EEPROM, dejando un espacio libre desde la posicin 0800H hasta la 2FFFH, esto es una prctica comn en sistemas de

    microprocesadores ya que previene el espacio suficiente para futuras ampliaciones de la memoria. En la figura 6.3 se

    muestra el mapa de memoria.

    La seal de activacin de la memoria SRAM se har a travs de una funcin OR con las seales mostradas en la figura 6.4

    y la cul se implementar dentro del circuito GAL22V10D.

    Figura 6.4 Activacin de la memoria SRAM

    Para realizar la prueba de funcionamiento de todo el sistema se utilizar un programa que generar un registro de

    corrimiento de 8 bits en el puerto A con espaciamiento de 1 seg entre cambio y cambio y una duracin de encendido de

    cada led de 100 ms. Para poder ajustar la duracin de los cambios ser necesario cambiar el capacitor del circuito de

    reloj, por un cristal de cuarzo de 4 MHz.

    Este programa permite la utilizacin de subrutinas debido a la conexin de la memoria SRAM y sobre este circuito ya se

    puede implementar la pila (stack), la pila se establecer a partir de la localidad 37FFH que es la ltima posicin de la

    memoria SRAM.

    Para configurar el PPI 8255 con todos sus puertos de salida en modo 0 se deber escribir la palabra de control (80H) de 8

    bits en el puerto 03H.

    Actividades Previas

    1. EI alumno deber realizar la lectura de la prctica de laboratorio.2. El alumno programar la memoria AT28C16 con el cdigo de mquina generado por el programa en lenguaje

    ensamblador mostrado en la figura 6.6, considerando que en cada localidad debe grabarse un byte.

    3. El alumno programar el dispositivo lgico programable (PLD) GAL22V10D con la funcin mostrada en la figura 6.7.4. Traer el circuito armadoMaterial

    1 Sistema mnimo con Microprocesador, circuito de reloj, circuito de reset, memoria EEPROM, PPI 8255 y decodificador

    de direcciones con GAL22V10D.

    1 Circuito Integrado SRAM 6116.

    Equipo

    1 Fuente de C.D.

    1 Osciloscopio

    1 Multmetro

    1 Punta lgica para prueba de tercer estado

    1 Circuito de Leds de prueba

    A12

    /RD

    /MREQ

    A11

    /CE_SRAM

    A15

    1

    2345678

    A13

    A14

    1 2

    1 2

    /WR

    U?

    XNOR2

    12

    3

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    43/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 6 Memoria SRAM o memoria de datos 34

    Procedimiento Experimental

    1. Implemente el circuito mostrado en la figura 6.8 considerando que ya se tiene armado el sistema mnimo demicroprocesador incluyendo la memoria EEPROM y el PPI 8255 y solo deber adicionarse el circuito integrado 6116

    que integra la memoria SRAM.

    2. Utilice la figura 6.5 para guiarse en la implementacin fsica.

    Figura 6.5 Implementacin de memoria SRAM.

    3. Edite el siguiente programa en lenguaje ensamblador, tal y como se muestra en la figura 6.6 y obtenga el cdigo demquina.

    Figura 6.6 Programa de registro de corrimiento.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    44/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 6 Memoria SRAM o memoria de datos 35

    4. Programe la memoria EEPROM en el programador universal con el archivo P06 Registro de corrimiento.hex.5. Escriba la funcin decodificadora de direccin en un proyecto de ISPLEVER tal y como se muestra en la f igura 6.7.6. Programe la GAL con el archivo con terminacin .jed y pruebe el sistema completo para comprobar el

    funcionamiento del sistema.

    7. Mida el tiempo de encendido del led y el tiempo entre cambios producido por el sistema, comprobando que secumplan los tiempos de diseo.

    Figura 6.7 Habilitacin de la memoria SRAM con la GAL22V10D.

    Cuestionario

    1. Es posible llamar una y otra vez en forma recursiva a las subrutinas con la estructura de la pila de estemicroprocesador ?

    2. Porque se establece la direccin inicial de la pila en la direccin final de la SRAM y no en la posicin inicial.3. Justifique la expresin de Boole empleada para la activacin de la SRAM.4. Explique el concepto LIFO empleado en la pila del microprocesador Z80.5. Como identifica el microprocesador a cul de las 2 memorias del circuito se est accediendo.

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    45/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Prctica 6 Memoria SRAM o memoria de datos 36

    U2

    Z80CPU

    A0

    3

    0

    A1

    3

    1

    A2

    3

    2

    A3

    3

    3

    A4

    3

    4

    A5

    3

    5

    A6

    3

    6

    A7

    3

    7

    A8

    3

    8

    A9

    3

    9

    A10

    4

    0

    A11

    1

    A12

    2

    A13

    3

    A14

    4

    A15

    5

    WAIT

    24

    INT

    16

    NMI

    17

    RST

    26

    BUSRQ

    25

    BUSAK

    23

    CLK

    6

    IORQ

    20

    HALT

    18

    D0

    1

    4

    D1

    1

    5

    D2

    1

    2

    D3

    8

    D4

    7

    D5

    9

    D6

    1

    0

    D7

    1

    3

    M1

    27

    MREQ

    19

    RD

    21

    REFSH

    28

    WR

    22

    74LS04

    U1C

    5

    6

    Circuito

    VCC

    GND

    74LS04

    U1

    14

    7

    Z80CPU

    U2

    11

    29

    GAL22V10D

    U3

    24

    12

    AT28C16

    U4

    24

    12

    PPI8255

    U5

    26

    7

    6116SRAM

    U6

    24

    12

    MMC74C922

    U7

    18

    9

    SW1

    RESET

    1N4001

    D1

    1k

    R3

    0.1uF

    C2

    Un

    iversid

    adNac

    iona

    lAu

    tnoma

    de

    Mx

    ico

    Facu

    ltad

    de

    Es

    tudios

    Super

    iores

    Cuau

    titln

    Sistema

    de

    Microprocesa

    dor

    Z80

    M.

    en

    TI.

    Jorge

    Buen

    daGmez

    +5V

    U4

    AT28C16

    A0

    8

    A1

    7

    A2

    6

    A3

    5

    A4

    4

    A5

    3

    A6

    2

    A7

    1

    A8

    23

    A9

    22

    A10

    19

    D0

    9

    D1

    10

    D2

    11

    D3

    13

    D4

    14

    D5

    15

    D6

    16

    D7

    17

    CE

    18

    OE

    20

    WE

    21

    +5V

    U3

    GAL22V10

    I/CLK

    1

    I

    2

    I

    3

    I

    4

    I

    5

    I

    6

    I/O

    14

    I/O

    15

    I/O

    16

    I/O

    17

    I/O

    19

    I/O

    20

    I/O

    21

    I/O

    22

    I/O

    18

    I/O

    23

    I

    7

    I

    8

    I

    9

    I

    10

    I

    11

    I

    13

    74LS04

    U1A

    1

    2+5V

    U5

    8255

    D0

    34

    D1

    33

    D2

    32

    D3

    31

    D4

    30

    D5

    29

    D6

    28

    D7

    27

    RD

    5

    WR

    36

    A0

    9

    A1

    8

    RESET

    35

    CS

    6

    PA0

    4

    PA1

    3

    PA2

    2

    PA3

    1

    PA4

    40

    PA5

    39

    PA6

    38

    PA7

    37

    PB0

    18

    PB1

    19

    PB2

    20

    PB3

    21

    PB4

    22

    PB5

    23

    PB6

    24

    PB7

    25

    PC0

    14

    PC1

    15

    PC2

    16

    PC3

    17

    PC4

    13

    PC5

    12

    PC6

    11

    PC7

    10

    U6

    6116

    A0

    8

    A1

    7

    A2

    6

    A3

    5

    A4

    4

    A5

    3

    A6

    2

    A7

    1

    A8

    23

    A9

    22

    A10

    19

    CE

    18

    OE

    20

    WE

    21

    D0

    9

    D1

    10

    D2

    11

    D3

    13

    D4

    14

    D5

    15

    D6

    16

    D7

    17

    74LS04

    U1B

    3

    4

    10k

    R2

    10k

    R1

    0.1uF

    C1

    Figura 6.8 Diagrama de conexiones del sistema mnimo

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    46/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Practica 7 Conexin de dispositivo perifrico de entrada (Teclado) 37

    Tema

    6.1.1. Control de dispositivos con tcnicas de programacin

    Objetivos

    El alumno realizar la conexin de un teclado matricial telefnico de 12 teclas al sistema de microprocesador. El alumno integrar un decodificador de teclado matricial MM74C922. El alumno programar una GAL para apoyar el funcionamiento del decodificador MM74C922. El alumno crear y probar un programa en lenguaje ensamblador para obtener el cdigo binario de la tecla

    presionada.

    Introduccin

    El circuito desarrollado hasta la prctica 6 ya conforma el esquema de Von Neumann con todos los elementos necesarios

    para la creacin de una computadora, pero an no proporciona interaccin adecuada con el usuario externo. Para que el

    sistema tenga mayor utilidad es necesario conectarle dispositivos perifricos de entrada y salida para facilitar la

    interaccin con la electrnica del microprocesador tal como se muestra en la figura 7.1.

    Reloj

    Microprocesador

    Memoria

    ROM

    (Programa)

    Bus de Datos

    Memoria

    RAM

    (Datos)

    Puertos de

    Entrada

    Puertos de

    Salida

    Bus de Direcciones

    Bus de Control

    Dispositivos Perifricos

    Figura 7.1 Dispositivo perifrico de entrada en Esquema de Von Neumann

    Los dispositivos perifricos de entrada se emplean para que el usuario externo pueda interactuar con el sistema de

    microprocesador y facilitar la insercin de datos externos, entre estos dispositivos se encuentran los teclados, los

    Laboratorio de MicroprocesadoresPrctica 7

    Conexin de dispositivo perifrico de entrada (Teclado)

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    47/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Practica 7 Conexin de dispositivo perifrico de entrada (Teclado) 38

    dispositivos apuntadores como Mouse, Track Ball, Touch Screen, tarjetas de red, audio o video, discos duros, CD, o DVD

    y en general cualquier dispositivo que permita enviar datos hacia el microprocesador.

    Es por eso que en esta prctica se propone adicionar un teclado matricial de 12 teclas como el mostrado en la figura 7.2,

    que nos permitir insertar datos numricos o an alfanumricos si seleccionamos otro tipo de teclado.

    Figura 7.2 Teclado telefnico matricial de 12 teclas

    Para conectar este teclado se emplear un decodificador de teclado integrado MM74C922 que puede decodificar

    teclados de 12 o 16 teclas como se muestra en la figura 7.3.

    Figura 7.3 Circuito decodificador MM74C922

    El proceso lo realiza a travs del envo de 4 seales de un registro de corrimiento a las terminales de los renglones, las

    cuales los activan en forma secuencial uno a uno, tal y como se muestra en la tabla 7.1.

    Tabla 7.1 Seales del registro de corrimiento de los renglones

    Posteriormente el decodificador reconoce cual de las columnas ha sido presionada y en conjunto con los cdigos de los

    renglones, determina cual de las teclas ha sido presionada, de acuerdo a la tabla 7.2.

    Y1,X1 Y1,X2 Y1,X3 Y1,X4 Y2,X1 Y2,X2 Y2,X3 Y2,X4 Y3,X1 Y3,X2 Y3,X3 Y3,X4 Y4,X1 Y4,X2 Y4,X3 Y4,X4

    A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

    B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

    C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

    D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

    Tecla 0 1 2 3 4 5 6 7 8 9 A B C D E F

    Tabla 7.2 Decodificacin rengln columna de teclado de 16 teclas

    ROW Y1 ROW Y2 ROW Y3 ROW Y4

    1 0 0 0

    0 1 0 0

    0 0 1 0

    0 0 0 1

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    48/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Practica 7 Conexin de dispositivo perifrico de entrada (Teclado) 39

    Adicionalmente, cada que una tecla es presionada, se genera una seal de dato disponible (DATA AVAILABLE), activa en

    alto, que se emplear para producir una interrupcin al microprocesador Z80 en su terminal /INT y as poder leer el dato

    en las terminales del puerto C (02H).

    Debido a que el decodificador reconoce 16 teclas y nuestro teclado solo tiene 12, se omitir la conexin de la cuarta

    columna (X4), lo cual eliminar a los cdigos correspondientes a las teclas 3, 7, B Y F y esto hace que los cdigos binarios

    para cada tecla no correspondan con las posiciones del teclado telefnico, en la figura 7.4 se muestra la equivalencia.

    Figura 7.4 Cdigos para teclados de 16 teclas y su correspondencia con teclado telefnico de 12 teclas

    Este problema deber ser resuelto va software a travs de una tabla de asignacin del cdigo correcto; 0 a 1, 1 a 2, 2 a

    3, 3 sin asignacin y as consecutivamente de acuerdo a la tabla 7.3

    Cdigo

    74C9220 1 2 3 4 5 6 7 8 9 A B C D E F

    Tecla 1 2 3 X 4 5 6 X 7 8 9 X A 0 B X

    Tabla 7.3 Cdigos asignados por software

    El decodificador posee la caracterstica de salidas en tercer estado controladas por la seal de habilitacin de salida

    (OUTPUT ENABLE) activa en nivel bajo, la cual ser proporcionada por la inversin de la seal dato disponible (DATA

    AVAILABLE) y generada a travs de la GAL.

    El decodificador MM74C922 tambin tiene la funcionalidad de generacin de la frecuencia de oscilacin para

    proporcionar la velocidad de escaneo de las teclas y tambin tiene implementado un sistema anti rebotes para evitar ladeteccin de teclas repetidas debidas a los rebotes mecnicos. Estas funcionalidades se obtienen a travs de 2

    capacitores que se seleccionan de acuerdo a las grficas de la figura 7.5. Se recomienda que el capacitor de anti rebotes

    sea 10 veces mayor que el capacitor de oscilacin.

    La captura del dato de 4 bits se realizar a travs de los 4 bits menos significativos del puerto C (02H) y solo se

    capturarn a travs de una subrutina de interrupcin activada al momento de presionar una de las teclas. El programa

    solo considera la activacin de una tecla y no de 2 juntas pues se tomara la primera en detectarse.

    Figura 7.5 Grficas para seleccin de los capacitores de oscilacin y anti rebotes

    0 1 2 3

    4 5 6 7

    8 9 A B

    C D E F

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    49/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Practica 7 Conexin de dispositivo perifrico de entrada (Teclado) 40

    Actividades Previas

    1. EI alumno deber realizar la lectura de la prctica de laboratorio.2. El alumno programar la memoria AT28C16 con el cdigo de mquina generado por el programa en lenguaje

    ensamblador mostrado en la figura 7.8, considerando que en cada localidad debe grabarse un byte.

    3. El alumno programar el dispositivo lgico programable (PLD) GAL22V10D con la funcin mostrada en el proyectode ISPLEVER de la figura 7.9.

    4. Traer el circuito armadoMaterial

    1 Sistema mnimo con microprocesador Z80, circuito de reloj, circuito de reset, memoria EEPROM AT28C16, memoria

    SRAM 6116, decodificador de direcciones con GAL y circuito de puertos PPI 8255.

    1 Teclado telefnico matricial de 12 teclas.

    1 Circuito MM74C922 decodificador de teclado

    1 Capacitor de 0.1F

    1 Capacitor de 0.01F

    Equipo

    1 Fuente de C.D.

    1 Osciloscopio

    1 Multmetro

    1 Punta lgica para prueba de tercer estado

    1 Circuito de Leds de prueba

    Procedimiento Experimental

    1. Implemente el circuito mostrado en la figura 7.7 considerando que ya se tiene armado el sistema mnimo de VonNeumann y solo deber adicionarse el circuito de decodificacin de teclado MM74C922 y el teclado telefnico de

    12 teclas, adems de las conexiones adicionales hacia el microprocesador Z80 que habilitarn el empleo de las

    interrupciones y hacia la GAL para realizar la inversin de la seal de control.

    2. Utilice la figura 7.6 para establecer la posicin de los circuitos y sus conexiones.

    Figura 7.6 Sistema mnimo con decodificador de teclado

  • 5/24/2018 Microprocesadores%28IME93%29 2014 2.Desbloqueado

    50/66

    Facultad de Estudios Superiores Cuautitln UNAM

    Practica 7 Conexin de dispositivo perifrico de entrada (Teclado) 41

    C?0.01uF

    0

    C? 0

    .1uF

    0

    2

    1

    5

    4

    3

    7

    6

    *

    9

    8

    Gris

    #

    0

    Azul

    Violeta

    Naranja

    Amarillo

    RojoV

    erde

    U7MM74C92

    2

    ROWY1

    1

    ROWY2

    2

    ROWY3

    3

    ROWY4

    4

    OSC

    5

    KBONSMSK

    6

    CLMX2

    10

    CLMX1

    11

    DAVBL

    12

    OE

    13

    OD

    14

    OC

    15

    OB

    16

    OA

    17

    CLMX3

    8

    CLMX4

    7

    U2

    Z80CPU

    A0

    30

    A1

    31

    A2

    32

    A3

    33

    A4

    34

    A5

    35

    A6

    36

    A7

    37

    A8

    38

    A9

    39

    A10

    40

    A11

    1

    A12

    2

    A13

    3

    A14

    4

    A15

    5

    WAIT

    24

    INT

    16

    NMI

    17

    RST

    26

    BUSRQ

    25

    BUSAK

    23

    CLK

    6

    IORQ

    20

    HALT

    18

    D0

    14

    D1

    15

    D2

    12

    D3

    8

    D4

    7

    D5

    9

    D6

    10

    D7

    13

    M1

    27

    MREQ

    19

    RD

    21

    REFSH

    28

    WR

    22

    74LS04

    U1C

    5

    6

    SW1

    RESET

    Circuito

    V

    CC

    GND

    74LS04

    U1

    14

    7

    Z80CPU

    U2

    11

    29

    GAL22V10D

    U3

    24

    12

    AT28C16

    U4

    24

    12

    PPI8255

    U5

    26

    7

    6116SRAM

    U6

    24

    12

    MMC74C922

    U7

    18

    9

    1N4001

    D1

    1k

    R3

    0.1uF

    C2

    UniversidadNacionalAutnomadeMxico

    FacultaddeEstudiosS

    uperioresCuautitln

    SistemadeMicroproc

    esadorZ80

    M.enTI.JorgeBuendaGmez

    +5V

    U4

    AT28C16

    A0

    8

    A1

    7

    A2

    6

    A3

    5

    A4

    4

    A5

    3

    A6

    2

    A7

    1

    A8

    23

    A9

    22

    A10

    19

    D

    0

    9

    D

    1

    10

    D

    2

    11

    D

    3

    13

    D

    4

    14

    D