Está en la página 1de 66

PRÁCTICAS

PRÁCTICA No. 1 MEMORIAS


1 OBJETIVO
Que el alumno conozca, diseñe y simule aplicaciones básicas con Memorias de
Microchip.

2 INTRODUCCIÓN
Las memorias en un sistema digital guardan información, de manera permanente o
de manera parcial, según la aplicación de que se trate.

En esta práctica se adquirirá la habilidad de trabajar con memorias EPROM para


diferentes aplicaciones.

3 MATERIAL Y EQUIPO NECESARIO


Hardware
1 Fuente Digital.
1 EPROM Memoria 2732.
8 Leds.
2 Displays BCD.
Software
Proteus y Vivado
4 TEORIA

Terminología de memorias.
Celda de memoria: Dispositivo o circuito electrónico que se utiliza para almacenar un solo
bit (0 o 1). Algunos ejemplos de celdas de memoria son: un flip-flop, un capacitor con
carga, y un solo canal en cinta o en discos magnéticos.

Palabra de memoria: Grupo de bit (celdas) en una memoria que representa instrucciones
o datos de algún tipo. El tamaño de la palabra en las computadoras modernas varían de 4
a 64 bits, dimensión de la computadora.

Byte Término especial que se usa para una palabra de 8 bits, que es el tamaño de la
palabra más común en las microcomputadoras.

Capacidad: Forma de especificar los bits que puede almacenar un dispositivo de memoria
particular o bien de un sistema de memoria completo. • Sea una memoria que almacena
4096 palabras de 20 bits. • La capacidad total es de 81,920 bits ( 4096*20). • 4096 es el
número de palabras y 20 es el número de bits por palabras (tamaño de la palabras). • Se
usa 1K = 1024 = 210 para referirse a capacidad memoria.

Densidad: Otro término dado a la capacidad de memoria. • Si un dispositivo de memoria


tiene mas densidad que otro, significa que almacena mas bits en la misma cantidad de
espacio. • Es más densa.

Dirección: Número que identifica la localidad de una palabra en la memoria. • Cada


palabra almacenada en un dispositivo de memoria o sistema de memoria tiene una
dirección única. • Las direcciones siempre se especifican con un número binario, a veces se
utilizan números octales, hexadecimales y decimales por conveniencia

Operación general de memorias:

Las memorias están formadas por matrices de celdas. En cada celda se almacena 1 bit de
información Cada fila de esa matriz de memoria se denomina palabra y representa la
información que puede leerse/escribirse en cada acceso a la misma.
5 METODOLOGÍA
5.1 Memoria EPROM 2732
5.1.1 BCD
Se quiere leer un dato binario de cuatro bits y mostrar su equivalente decimal en
dos displays (código hexadecimal), ver figura 1.

Código en hexadecimal

Simulación en Proteus:
5.1.2 Desplegar código.
Se quiere leer un dato binario de 4 bits y mostrar el código que se muestra en la
figura 2. El display es de 4 segmentos (A, B, C, D).
El código de la izquierda es para la combinación binaria menos significativa. El
código de la derecha es para el código binario más significativo.

Código en hexadecimal

Simulación en Proteus:
5.1.3 Control de un carrito de 4 motores.
Diseñe una unidad de control basada en memoria que admita un dato de tres bits
para controlar los motores de un carrito.
 Si en la combinación de bits no hay unos, el carro avanza.
 Si la combinación de bits da 3 1s, el carro retrocede.
 Si la combinación de bits es de un 1, el carro se mueve a la derecha, excepto
anteriores.
 Si la combinación de bits da dos 1s, el carro se mueve a la izquierda.

Código en hexadecimal

Simulación en Proteus:

Con esta combinación de bits el carrito avanza


Con esta combinación de bits el carrito retrocede

Con esta combinación de bits el carrito va hacia la derecha


Con esta combinación de bits el carrito va hacia la izquierda

5.1.4 Cálculo del cuadrado de un número


Diseñe con memoria EPROM el circuito que obtenga el cuadrado de un número de
3 bits.

Código en hexadecimal
Simulación en Proteus:

(000)^2

(001)^2
(010)^2

(011)^2
(100)^2

(101)^2
(110)^2

(111)^2
5.2 BANCO DE MEMORIA DE 4KX16 CON 2732
5.2.1 Número y su exceso a 2
El byte más significativo del Banco de memoria debe mostrar los números del 0 al
13 al direccionarse las primeras 14 localidades. El byte menos significativo debe
mostrar el exceso a dos de dicho dato.

Código en hexadecimal – Primera memoria

Código en hexadecimal – Segunda memoria

Simulación en Proteus:
5.2.2 Números ascendente y descendente
El byte más significativo del Banco de memoria debe mostrar del 0 al 15 al
direccionarse las primeras 16 localidades. El byte menos significativo debe mostrar
del 15 al 0.

Código en hexadecimal – Primera memoria

Código en hexadecimal – Segunda memoria


Simulación en Proteus:
6 CONCLUSION.
En conclusión, se logró completar el 100% de la practica no tuvimos problema con
proteus al ejecutar los circuitos.

7 COMPETENCIAS APLICADAS.
Aprendizaje de programación y diseño.
PRÁCTICA No. 2 MICROCONTROLADORES

1 OBJETIVO
Que el alumno conozca, diseñe y simule aplicaciones básicas con microcontroladores de
Microchip.

2 INTRODUCCIÓN
Las arquitecturas Von Neuman y Harvard son las más conocidas para implementar
microprocesadores y microcontroladores respectivamente.
En esta práctica se adquirirá la habilidad de trabajar con microcontroladores PIC,
conectarle periféricos de entrada – salida y programarlos a nivel ensamblador.

3 JUSTIFICACION
Se realiza esta práctica con el propósito de manejar microcontroladores junto con su
programación haciendo la simulación de la practica en proteus.

4 MATERIAL Y EQUIPO NECESARIO


Hardware

 1 Fuente Digital
 1 MCU PIC 16F84A
 8 Leds
 8 Resistencias de 330 Ω
 Demás
Software

 Proteus
 MPLab
5 TEORIA

Un microcontrolador es un circuito integrado programable que:

• Ejecuta las órdenes o secuencias que están grabadas en su memoria. Un MCU está
compuesto de varios bloques funcionales

• Cada uno cumple una tarea específica dentro del ordenamiento del mismo y a su vez
permiten obtener configuraciones diferentes.

• Se pueden diferenciar según el tamaño y cantidad de sus elementos básicos y


características especiales. Algunas de las partes básicas de un MCU son:

• Memoria ROM

• Memoria RAM

• Líneas de ENTRADA/SALIDA (I/O) o puertos utilizados para conectar los elementos


externos al microcontrolador.

• Lógica de CONTROL que coordina la interacción entre los demás bloques.

Microcontroladores MicroChip 16F84

El PIC 16F84 es un microcontrolador con memoria de programa tipo FLASH

. • Esto facilita el desarrollo de prototipos y su aprendizaje

• No requiere luz ultravioleta para borrar la memoria, como versiones anteriores de


EPROM.

• Se reprogramar sin ser borrado con anterioridad.

El PIC 16F84 es un MCU de Microchip Technology fabricado en tecnología CMOS Consumo


de potencia muy bajo. Es completamente estático, es decir, que el reloj puede detenerse y
los datos de la memoria no se pierden.
ARQUITECTURA
Arquitectura del MCU se refiere a los bloques funcionales internos que conforman al MCU
y la forma en que están conectados la memoria FLASH (de programa), la memoria RAM
(de datos), los puertos, la lógica de control que permite que todo el conjunto funcione,
etc.

6 METODOLOGÍA
6.1 MCU con led y dipswitch
6.1.1. Se quiere leer el estado de los dipswitch e invertir el valor leído, para asegurar
de que el interrupto con extensión .hex. que esté cerrado se convierta en una señal
positiva para encender el LED correspondiente, dado que el circuito con interruptor
trabaja en modo “invertido”.

En Proteus capture esquemáticamente el circuito de la figura 1. Luego de doble click


al PIC para incluir el archivo .hex al PIC.

El archivo .hex se genera cuando captura el código en ensamblador en MPLAB y lo


compila.

En la figura 2 se muestra el diagrama de flujo correspondiente al ejercicio

Figura 1. PIC 16F84 A con leds y dipswitchs


Figura 2. DFD del PIC 16F84A con leds y dipswitchs
El código en lenguaje ensamblador se muestra a continuación
Simulación en Proteus:

4.1.2. Cambie el arreglo de los circuitos de interruptores, de leds y programa para


que al cerrar un interruptor (ON) se encienda el led respectivo.
El código en lenguaje ensamblador se muestra a continuación
Simulación en Proteus:

4.2 MCU con display de 7 segmentos


4.2.1. Se quiere hacer un contador decimal (de 0 a 9), el cual, lleva el conteo del número
de veces que se oprime una tec1a (pulsador). Para manejar el display se utilizará un
decodificador de BCD a 7 Segmentos 74LS48.

En la práctica el PIC debe encargarse de verificar cuando el conteo llega a 9 para empezar
nuevamente en 0. En Proteus capture esquemáticamente el circuito de la figura 3. Luego
de doble click al PIC para incluir el archivo.hex al PIC.
El archivo.hex se genera cuando captura el código en ensamblador y lo compila.
Figura 3. Circuito de PIC con display.

En la figura 4 se muestra el diagrama de flujo correspondiente al ejercicio.


Figura 4. DFD del contador decimal 0 a 9.

El código en lenguaje ensamblador se muestra a continuación


Simulación en Proteus:
4.3 MCU con LCD
4.3.1. Se quiere conectar a un microcontrolador PIC un LCD.
LCD
El LCD se encuentran en diferentes presentaciones, por ejemplo (2 líneas por 16
caracteres), 2x20, 4x20, 4x40, etc.
La forma de utilizarlos y sus interfaces son similares, por eso, los conceptos vistos aquí se
pueden emplear en cualquiera de ellos.

Se trabajará con un display de 2x16, ya que es de bajo costo, se consigue fácilmente en el


comercio y tiene un tamaño suficiente para la mayoría de las aplicaciones. Algunos
módulos LCD tienen luz posterior ó “backlight”, para mejorar su visualización, ésta se
maneja a través de dos pines que normalmente se conectan a +5V y a tierra.

Para evitar que se presenten altas temperaturas, debido a la luz posterior, estos pines se
deben manejar de manera pulsante (encendido y apagado), con una frecuencia de
aproximadamente 60 Hz. Otra opción mucho más sencilla es utilizar una resistencia de 10
ohmios (a 1/2W) para alimentar el positivo del backlight.

Los pines de conexión de estos módulos incluyen un bus de datos de 8 bits, un pin de
habilitación (E), un pin de selección, que indica que el dato es una instrucción o un
carácter del mensaje (RS) y un pin que indica si se va a escribir o leer en el módulo LCD
(R/W).
La tabla 1 muestra las funciones de cada uno de ellos.
Tabla 1. Funciones de los pines de UN LCD

El módulo LCD responde a un conjunto especial de instrucciones, estas deben ser enviadas
por el microcontrolador o sistema de control al display, según la operación que se
requiere. Estas instrucciones se emplean en los ejemplos a realizar más adelante, en ellos
se explica la forma de utilizarlas.
En la figura 5, se muestra las instrucciones del módulo.

Figura 5. Conjunto de instrucciones del módulo LCD

Los caracteres que se envían al display se almacenan en la memoria RAM del módulo.
Existen posiciones de memoria RAM, cuyos datos son visibles en la pantalla y otras que no
son visibles, estas últimas se pueden utilizar para guardar caracteres que luego se
desplazan hacia la parte visible.
En la figura 6 se muestran las direcciones de memoria visibles y no visibles, que conforman
las dos líneas de caracteres del módulo. Es importante anotar que sólo se pueden mostrar
caracteres ASCII de 7 bits, por lo tanto, algunos caracteres especiales no se pueden ver (se
debe tener a la mano una tabla de los caracteres ASCII para conocer los datos que son
prohibidos). Por otra parte, se tiene la opción de crear caracteres especiales (creados por
el programador), y almacenarlos en la memoria RAM que posee el módulo.

Figura 6. Mapa de memoria del módulo LCD

El proyecto consiste en conectar el módulo de cristal líquido a un microcontrolador


PIC16F84A, utilizando el bus de datos a 8 bits. En este caso se emplea el PIC16F84A,
aunque se puede implementar con otros microcontroladores.

Para este caso, la práctica consiste en hacer circular un mensaje en la línea superior de la
pantalla.
En la figura 7 se muestra el circuito de la práctica.
Realice la captura esquemática del circuito en Proteus.
Figura 7. Microcontrolador PIC conectado al módulo LCD

El código en ensamblador del programa del PIC para mostrar letreros en el módulo LCD se
muestra a continuación:
Simulación en Proteus:
4.3.2 Cambie Código del letro para que aparezca su nombre.
El código en ensamblador del programa del PIC para mostrar letreros en el módulo LCD se
muestra a continuación:
Simulación en Proteus:

También podría gustarte