Ejercicios de Digitales II_Problemas Práctico 2014

16
Electrónica Digital II Guía de Trabajos Prácticos 1 Universidad Nacional de Córdoba Facultad de Ciencias Exáctas Físicas y Naturales Guia de Problemas Electrónica Digital II Año 2014

description

Ejercicios de Digitales II_Problemas Práctico 2014

Transcript of Ejercicios de Digitales II_Problemas Práctico 2014

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    Universidad Nacional de Crdoba Facultad de Ciencias Exctas Fsicas y Naturales

    Guia de Problemas Electrnica Digital II

    Ao 2014

  • Electrnica Digital II Gua de Trabajos Prcticos

    2

    PRACTICO 1 Mapeo de Memorias Problema 1.1 Implementar un Banco de Memoria que responda al siguiente mapa:

    Problema 1.2 Implementar un Banco de Memoria que responda al siguiente mapa: a partir de 0000h => 8 KB de EPROM a partir de 3000h => 4 KB de RAM a partir de 4000h => 16 KB de EPROM a partir de A000h => 4 KB de EPROM Se dispone de memorias RAM de 1K x 4 bits y EPROM de 4K x 8 bits.

    Problema 1.3 Realizar un mapeo que ubique 4KBytes de EPROM a partir de la posicin 0 y 4KBytes de RAM a partir de 1000H. Se dispone de chips EPROMs de 1Kx4 bits y RAMs de 512 Bytes.

    Problema 1.4 Realizar un mapeo que ubique 8KBytes de EPROM a partir de la posicin 0 y 8KBytes de RAM a partir de 2000H. Se dispone de chips EPROMs de 2Kx4 bits y RAMs de 1 KBytes.

  • Electrnica Digital II Gua de Trabajos Prcticos

    3

    Problema 1.5 Dado el siguiente circuito encuentre el mapeo correspondiente:

    Problema 1.6 Dado el siguiente circuito encuentre el mapeo correspondiente:

    Problema 1.7 Dado el siguiente circuito encuentre el mapeo correspondiente:

  • Electrnica Digital II Gua de Trabajos Prcticos

    4

    Probema 1.8 Dado el siguiente circuito encuentre el mapeo correspondiente:

  • Electrnica Digital II Gua de Trabajos Prcticos

    5

    PRACTICO 2 Programacin Bsica Problema 2.1 Escribir un programa que sume dos valores guardados en 21H y 22H con resultado en 23H y 24H

    Problema 2.2 Escribir un programa que resuelva la ecuacin: (A + B) C (posiciones 21H, 21H y 22H)

    Problema 2.3 Escribir un programa que sume dos nmeros de 16 bits A (20H 21H) y B (22H y 23H) y el resultado colocarlo en A.

    Problema 2.4 Escribir un programa que su ejecucin demore un milisegundo (Cristal de 4MHz).

    Problema 2.5 Escribir un programa que su ejecucin demore un segundo (Cristal de 4MHz).

    Problema 2.6 Escribir un programa que compare dos nmeros A y B. Si son iguales, el resultado debe ser 0. Si A > B, el resultado debe ser la diferencia A - B, y si A < B el resultado debe ser la suma A + B. (A en posicin 30D, B en 31D y R en 32D)

    Problema 2.7 Escribir un programa para almacenar el valor 33D en 15 posiciones contiguas de la memoria de datos, empezando en la direccin 0x30

    Problema 2.8 Escribir un programa que convierta un nmero de 8 bits, escrito en ASCII, en su equivalente en BCD. Num en 0x20

    Problema 2.9 Idem anterior, pero de la zona Nums (de 20H a 30H inclusive)

    Problema 2.10 Escribir un programa que convierta un nmero de 4 bits escrito en binario natural en su equivalente en cdigo Gray. (NumB 32D y NumG 33D)

  • Electrnica Digital II Gua de Trabajos Prcticos

    6

    PRACTICO 3 Entrada Salida Introduccin Problema 3.1 Escribir un programa que lea y obtenga en dos de los LEDs (RB3 y RB2) conectados al puerto B, el estado lgico que presentan los pulsadores conectados a los terminales RA4 y RB0, como indica la figura:

    Problema 3.2 Escribir un programa que cuente el nmero de veces que se puls la tecla conectada al terminal RA4 y que saque ese valor en binario natural por el Puerto B. Slo se utilizarn los bits RB0 a RB3 que son los que tienen conectados diodos LED para su observacin. Como consecuencia, el contador es de 4 bits: de 0 a 15.

    Problema 3.3 Escribir un programa que, dependiendo del estado de dos interruptores conectados a RA4 y RB0, presente en el puerto D diferentes funciones lgicas cuya tabla de verdad es:

  • Electrnica Digital II Gua de Trabajos Prcticos

    7

    PRACTICO 4

    Entradas Salidas

    Problema 4.1 Se desea generar un dado electrnico basado en hardware siguiente. Escribir un programa que active el dado al apretar un pulsador conectado a RA4 y que ilumine un nmero aleatorio al apretar un pulsador conectado a RB0.

    Problema 4.2 Escribir un programa que ilumine los LEDs conectados al puerto D segn las siguientes especificaciones:

    - Inicialmente aparecen parpadeando los LED - Si se aprieta un pulsador conectado a la patilla RA4 se produce un desplazamiento de derecha a izquierda o de izquierda a derecha en funcin de las veces que se pulse RA4. - El desplazamiento debe comenzar al soltar el pulsador. - En todo momento, en el instante en que se aprieta el pulsador conectado a la patilla RB0, se pasa al parpadeo inicial.

    La frecuencia del oscilador es de 4 MHz.

    Problema 4.3 Obtener el cdigo de la tecla que se pulsa en un teclado estndar conectado al puerto B de un microcontrolador PIC 16F873, como indica la figura.

    Problema 4.4 Se desea que al apretar el pulsador conectado a RA4 parpadeen, a una frecuencia de 0.5Hz, los 8 LEDs conectados en ctodo comn a los 8 terminales del puerto D de un microcontrolador PIC 16F877A. Dicho parpadeo se debe interrumpir durante unos instantes (3 segundos) si se aprieta el pulsador conectado al terminal RB0. Inicialmente, los LEDs estn apagados. El oscilador es de 4MHz.

  • Electrnica Digital II Gua de Trabajos Prcticos

    8

    Problema 4.5 Debido a un accidente de circulacin se han colocado cuatro seales luminosas a cada lado de la calzada para que sirvan de advertencia a los conductores que circulan por esa ruta (ver figura). El control del encendido/apagado se realiza mediante un microcontrolador PIC 16F877A y unos drivers conectados a los terminales del puerto D, como indica la figura. El sistema debe arrancar con todas las lmparas apagadas. Al apretar el pulsador conectado a RA4, debe comenzar la siguiente secuencia de luces: L0, L2, L4, L6, L1, L3, L5 y L7, es decir, primero las de la derecha y luego las de la izquierda. Al finalizar la secuencia, el ciclo debe repetirse indefinidamente. El oscilador de 4 MHz y el ciclo completo debe durar (aproximadamente) 1 segundo.

    Problema 4.6 Una variedad del ejercicio anterior consiste en hacer que las luces se enciendan por parejas y en secuencia, es decir, L0 y L1, despus L2 y L3 apagndose L0 y L1, despus L4 y L5 apagndose L2 y L3, y finalmente L6 y L7 apagndose L4 y L5, para posteriormente repetirse el ciclo. Para dar tiempo a ser observadas, el ciclo de encendido desde que se enciende la pareja L0 - L1 hasta que vuelve a encenderse debe ser de (aproximadamente) 0,5 seg.

    Problema 4.7 Una variedad del ejercicio anterior es la siguiente: que cuando cada pareja de lmparas se encienda no se apague la anterior. Cuando finalice la temporizacin de L6/L7 (con las otras 6 lmparas tambin encendidas), deben apagarse todas un tiempo y comenzar de nuevo el ciclo.

  • Electrnica Digital II Gua de Trabajos Prcticos

    9

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    PRACTICO 5

    Hardware Entrada y Salida Avanzado

    Problema 5.1 Mediante un microcontrolador PIC operando con un oscilador de 4 MHz, se desea controlar una mquina taladradora con las siguientes especificaciones: - Al apretar el pulsador de arranque conectado al terminal RA0 se inicia el ciclo de funcionamiento con un descenso rpido del taladro. - Cuando la parte inferior del portabrocas activa el sensor conectado al terminal RA2 (pone RA2 a "0"), se activa un rel que hace que la broca gire. Simultneamente el descenso del taladro debe ser lento. - Cuando la parte inferior del portabrocas activa el sensor conectado al terminal RA3 (pone RA3 a "0"), se considera que la pieza est taladrada y el taladro debe subir con rapidez manteniendo el giro de la broca. - Cuando el taladro en su regreso alcanza el final de carrera que est conectado al terminal RA1 (pone RA1 a "0") debe detenerse la subida del taladro y desactivarse el rel del giro de la broca. Adems, debe activarse una seal acstica que avise del fin de la operacin. - El nuevo ciclo comienza al apretarse de nuevo el pulsador de arranque

    Problema 5.2 Se desea gobernar con un microcontrolador PIC 16F877A las luces situadas sobre el techo de una ambulancial (L0, L1, ... L7). Estas luces estn conectadas a travs de sendos drivers a los terminales del PORTD de forma que L0 est conectada a RD0, L1 est conectada a RD1 y as sucesivamente hasta L7 que est conectada a RD7, como indica la figura. Se pretende que al accionar el pulsador conectado a la patilla RA4 del microcontrolador (ver figura), las luces se activen iluminndose en primer lugar L0 y L4 y una vez transcurridos aproximadamente 0,2 segundos L0 y L4 se apaguen y se iluminen L1 y L5 para que, transcurridos otros 0,2 seg, se apague L1 y L5 y se enciendan L2 y L6. Tras otros 0,2 seg. deben apagarse L2 y L6 y encenderse L3 y L7 de forma que, tras estar otros 0,2 seg. encendidas, el ciclo finaliza y deben encenderse de nuevo L0 y L4. De esa forma se obtiene, mirando desde encima, un efecto visual de movimiento de luz de izquierda a derecha en las luces delanteras y de derecha a izquierda en las traseras. El oscilador es de cristal de cuarzo de 4 MHz.

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    Problema 5.3 Se desea que cuando se apriete el pulsador conectado a RA4 (ver figura), los LEDs conectados a PORTD, inicialmente apagados, realicen el barrido indicado, es decir, primero enciende el conectado a RD7, tras 20 ms enciende tambin el conectado a RD6, y as sucesivamente hasta encender los 8. Una vez transcurridos otros 20 ms (con todos encendidos) deben comenzar a apagarse sucesivamente, es decir, en primer lugar se apaga el conectado a RD7, tras 20 ms se apaga tambin el conectado a RD6 y as sucesivamente hasta apagarse todos. Transcurridos otros 20 ms, el sistema debe repetir el ciclo si se aprieta de nuevo el pulsador. El oscilador es de 4 MHz.

    Problema 5.4 Se desea que, cuando se apriete el pulsador conectado a RA4, en los LEDs conectados a PORTD se realice un barrido de izquierda a derecha seguido de otro de derecha a izquierda, como indica la figura, estando en cada situacin durante 30 ms. Una vez finalizadas las dos secuencias, el sistema debe quedar listo para repetirlas si se vuelve a apretar el pulsador. El oscilador es de 4 MHz. Inicialmente las luces deben estar apagadas.

    Problema 5.5 El marcador de un polideportivo donde se juega baloncesto necesita aadir un display de 3 cifras de 7 segmentos donde se observe la cuenta descendente de 24 segundos.

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    Se activar inicialmente con un valor de 24.0 segundos y cada vez que llegue una seal a RB0. comenzar una cuenta regresiva hasta alcanzar 00.0 segundos en donde se producir un sonido de 500Hz durante 2 segundos y luego indicar 24.0 segundos a la espera de RB0 nuevamente. Si RB0 llega durante la cuenta descendente, el sistema se reinicia a 24.0 segundos. Dicho display estar controlado por un PIC 16F877A, cuyo oscilador es de 4 MHz,

    Problema 5.6 Para aumentar el nivel de ventas, un comerciante presenta una oferta que anuncia mediante un rtulo rectangular de 1m x 0,8 m situado en el escaparate de su tienda. Para atraer la atencin, coloca en el permetro del rtulo 8 bombillas cuyo encendido/apagado se controla (a travs de drivers) con los terminales del PORTD de un MCU PIC 16F877A, como indica la figura.

    Se desea que inicialmente las 8 bombillas estn apagadas y que, al apretar el pulsador conectado a RA4, se enciendan en secuencia y en el sentido de las agujas del reloj durante 0,5 seg.(+/-5 %) (deben llegar a encenderse las 8 bombillas). Una vez finalizado este ciclo, deben parpadear las 8 simultneamente durante unos 4 seg. aproximadamente, transcurridos los cuales volvern a la secuencia y as indefinidamente. El oscilador es de cristal de 4 MHz. Se pide: escribir un programa en ensamblador que efecte dicho control.

    Problema 5.7 El sistema consta de microcontrolador PIC 16F877A, cuyo oscilador es de 4 MHz, que tiene:

    El Display de cuatro dgitos de 7 segmentos (nodo comn) Tecla conectada a RB0, que genera un 0 lgico cuando se oprime Sensor de temperatura de un horno, con salida analgica de 0 volt a 3 volts que representan las temperaturas de 0 a 1023 grados

    El sistema ser utilizado para indicar el valor ledo en el conversor ADC (binario de10 bits) en el display de 7 segmentos, cada vez que se oprime la tecla conectada a RB0. El proceso mostrar inicialmente 0 y ser cambiado por el valor ledo en el ADC, cada vez que se oprima la tecla.

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    Dibujar el hardware completo del sistema y realizar el software necesario para satisfacer el requerimiento anterior.

    Problema 5.8 Idem al problema anterior, solo que adems debe transmitir por el puerto serie, la lectura realizada a 4800 baudios, Se debe anteponer, la palabra ADC (en ASCII), el nmero de lectura en un byte (en BCD). El valor transmitido

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    PRACTICO 6

    Subrutina e Interrupciones - Introduccion

    Problema 6.1 Realizar un programa que se encarga de manejar tres displays de siete segmentos de representacin (ms el correspondiente al punto decimal) como dispositivos de salida y un teclado matricial 4x4 como elemento de entrada.

    Se activan los displays con 3 lneas del PORTA (RA1, RA2 y RA3) y los segmentos con el PORTD. En los displays se pueden representar los nmeros del 0 al 9 y las letras de la A a la F, estos caracteres se pueden seleccionar desde el teclado.

    Inicialmente aparecern tres ceros (000) y a medida que se van pulsando las teclas, van apareciendo por la derecha los caracteres asociados a las teclas pulsadas y lo desplazan todo una posicin hacia la izquierda. El teclado responde al esquema elctrico y la disposicin mostrada en la figura siguiente e ir conectado al PORTB segn el orden que se representa en la figura de la prxima hoja.

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    Problema 6.2 Sobre el Hardware que se plantea en el esquema, redactar un programa en assembler que genere las formas de onda que se indican en la tabla.

    Los valores de tensin de referencia del conversor son 0V y 4V. Segn la tecla que se presione, la salida ser:

    La rutina que debe cumplir es la siguiente: 1. El tipo de salida se presetear con 1,2,3,4 y M. 2. La salida permanecer en 0 hasta que se presione I. 3. Cuando se est generando, la salida se pondr en 0 cuando se presione cualquier tecla, excepto Inicio. 4. Si se presionan 2 teclas, ser vlida la ltima. 5. Recin comenzar a generar el nuevo tipo de onda preseteado cuando se presione I.

    Problema 6.3 Generar un sonido en el pin RB1, siendo de 1000Hz, 500Hz, 250Hz y 125Hz las frecuencias generadas Cada vez que llega una interrupcin externa a RB0 cambia de frecuencia comenzando con 1000Hz, 500Hz, 250Hz, 125Hz, 1000Hz , 500Hz.... Realizar el hardware y software completo, con los comentarios correspondientes. (Cristal del PIC 4MHz)

    Problema 6.4 Un sistema basado en el PIC 16F87X se utiliza para medir tiempos entre eventos. Utilizando un display de 4 dgitos de 7 segmentos, se indicara el tiempo entre eventos, que son segundos con precisin de centsimas de segundo. Cada evento genera una interrupcin en RB0 y se debe mostrar en el display el tiempo transcurrido entre los dos ltimos eventos. Realizar el hardware y software completo, con los comentarios correspondientes. (Cristal del PIC 4MHz)

  • Electrnica Digital II Gua de Trabajos Prcticos

    1

    PRACTICO 7

    Subrutina e Interrupciones Avanzado.

    Problema 7.1 Se desea implementar un viejo juego llamado SIMON. El hardware consiste en:

    Cuatro LEDs conectados a 4 pines de un puerto Los LEDs sern Azul, Verde, Rojo y Amarillo Cuatro pulsadores conectados a otros 4 pines Un pulsador para comenzar el juego Un parlante conectado a un pin para generar tonos Capacidad de memorizar hasta una secuencia de 20 pulsaciones de teclas. Oscilador de 4 Mhz.

    El Sistema debe aleatoriamente generar la nueva pulsacin. Deben generarse cuatro tonos distintos segn sea el color encendido Debe generarse un tono de baja frecuencia para cuando pierde el jugador y otro si llega a 20 pasos. Cada secuencia debe tener una temporizacin de cada paso de 300mseg.

    Problema 7.2 Generar un nmero aleatorio de 1 a 6 con estadstica Se desea generar un dado electrnico basado en el hardware del Cronometro y dos pulsadores A y B. El sistema muestra inicialmente el primer dgito cambiando rapidamente (muestra como si fuera un 8) Cuando se oprime A se detiene y muestra aleatoriamente un nmero de 1 a 6 (tener especial cuidado para que todos los nmeros tengan la misma probabilidad de salir). Luego de mostrar el nmero (de 1 a 6) por 2 segundos vuelve a mostrar ese dgito cambiando rapidamente. Este proceso se repite n veces y cuando se oprima B, mostrar el nmero 1 y a su lado la cantidad de veces que sali este nmero, luego de 2 segundos mostrar el nmero 2 y cuantas veces se di este y asi sucesivamente hasta el nmero 6, para volver nuevamente con el 1 y asi indefinidamente hasta que se vuelve a apretar B, que detiene este proceso y comienza a mostrar el primer dgito cambiando rapidamente

    Problema 7.3 Se desea implementar un sistema basado en PIC que ejecute simultneamente los problemas presentados en el Terico

    a) Luces que se desplazan (con cola de atenuacin) b) Cronmetro

    Problema 7.4 Se desea implementar un sistema basado en PIC que ejecute simultneamente los problemas presentados en el Terico

    c) Luces que se desplazan (con cola de atenuacin) d) Cronmetro e) Medicin de la tensin de alimentacin del PIC (dos dgitos agregados al cronmetro)

    Problema 7.5 Se desea implementar un sistema basado en PIC que ejecute simultneamente los problemas presentados en el Terico

    f) Luces que se desplazan (con cola de atenuacin) g) Cronmetro h) Medicin de la tensin de alimentacin del PIC (dos dgitos agregados al cronmetro) i) SIMON