Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UNIVERSIDAD PRIVADA
DEL VALLE
FACULTAD DE INFORMÁTICA Y
ELECTRÓNICA
MICROPROCESADORES I
Título de la Práctica
1
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 1
MICROCONTROLADOR Y BOOTLOADER
INSUMOS
Cantidad Unidad Descripción Observaciones
1 pza Breadboard
1 pza Arduino UNO
1 pza. Microcontrolador ATMEGA328P
1 pza Cristal de 16 MHz
1 pza LED La práctica es para 1 grupo de 2
estudiantes, la capacidad del
2 pza Capacitor de 22 pF Laboratorio es de 10 grupos
1 pza Capacitor de 100 nF
1 pza Resistencia de 10 kΩ
1 pza Resistencia de 390 Ω
1 pza Conversor TTL-USB
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Leer la hoja de datos del microcontrolador.
2
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 1
MICROCONTROLADOR Y BOOTLOADER
Parte 4.2
Polarizar el microcontrolador de acuerdo con la hoja de datos y conectar el oscilador de 16 MHz para
su funcionamiento.
Grabar un programa de prueba (parpadeo de LED) usando el bootloader y el programa avrdude.
7. CUESTIONARIO
7.1 Explique de forma breve la arquitectura del microcontrolador.
7.2 Explique el proceso de grabación usando el bootloader.
3
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
4
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 2
PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR DE PUERTOS DE ENTRADA Y SALIDA
2. COMPETENCIAS
El estudiante:
• Conocerá las bases de la programación en lenguaje ensamblador.
• Conocerá el manejo y la configuración de los puertos de entrada y salida del microcontrolador.
INSUMOS
Cantidad Unidad Descripción Observaciones
1 pza Breadboard
1 pza Arduino UNO
1 pza. Microcontrolador ATMEGA328P
1 pza Cristal de 16 MHz La práctica es para 1 grupo de 2
3 pza LED estudiantes, la capacidad del
2 pza Capacitor de 22 pF Laboratorio es de 10 grupos
1 pza Resistencia de 10 kΩ
3 pza Resistencia de 220 Ω
1 pza Conversor TTL-USB
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Configurar un puerto de entrada y tres pines de salida. La idea es verificar que nibble es mayor y en
función de eso encender uno de tres LEDs conectados a las salidas, de la siguiente manera:
5
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 2
PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR DE PUERTOS DE ENTRADA Y SALIDA
Parte 6.1 Verificar el encendido de los LEDs de manera correcta en función de las entradas.
Parte 6.2 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
7.1 Explique la configuración de los puertos de entrada y salida.
7.2 Explique que es una resistencia Pull-Up y como se configura en los puertos del microcontrolador.
6
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 3
INTERRUPCIONES DEL MICROCONTOLADOR
2. COMPETENCIAS
El estudiante:
• Configurará y manejará interrupciones externas y por cambio de pin en el microcontrolador
ATmega328.
EQUIPOS
Cantidad Unidad Descripción Observaciones
1 pza Fuente de Poder La práctica es para 1 grupo de 2
estudiantes, la capacidad del
1 pza Multímetro Digital
Laboratorio es de 10 grupos
1 pza Simulador PROTEUS
INSUMOS
Cantidad Unidad Descripción Observaciones
1 pza Breadboard
1 pza Arduino UNO
1 pza Cable USB para Arduino
1 pza Microcontrolador ATMEGA328P
1 pza Cristal de 16 MHz
2 pza Capacitor de 22 pF La práctica es para 1 grupo de 2
estudiantes, la capacidad del
1 pza Capacitor de 100 nF Laboratorio es de 10 grupos
1 pza Resistencias de 10 kΩ
8 pza LED
8 pza Resistencias de 220 Ω
2 pza Pulsadores
1 pza Conversor TTL-USB
7
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 3
INTERRUPCIONES DEL MICROCONTOLADOR
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Realizar un programa que controle la cantidad de veces que se presiona dos pulsadores configurados
con resistencias Pull-Up por software. Además, los pulsadores deben ser configurados con
interrupciones, una con interrupción externa y la otra por cambio de estado en un pin. Cada vez que se
presione el pulsador debe incrementar el valor que se muestra en ocho LEDs conectados en un puerto.
Cuando se presione el otro pulsador al valor que se muestra en los ocho LEDs debe decrementarse.
Parte 6.1
Escribir e implementar el programa que controle la cantidad de veces que se presiona dos pulsadores
configurados con interrupciones, una con interrupción externa y la otra por cambio de estado en un pin.
Verificar que cada vez que se presione el pulsador se incrementa el valor que se muestra en los LEDs y
que cuando se presione el otro pulsador al valor se decremente.
Parte 6.2 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
8
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 4
TEMPORIZADORES Y CONTADORES
2. COMPETENCIAS
El estudiante:
• Tendrá la capacidad de configurar los temporizadores del microcontrolador en modo interrupción.
• Implementará un programa que permita cambiar el tiempo de un evento generado por el temporizador.
• Implementará un programa para utilizar el temporizador como contador de eventos externos.
EQUIPOS
INSUMOS
1 pza Breadboard
1 pza Arduino UNO
1 pza Microcontrolador ATMEGA328P
2 pza Capacitor de 22 pF
1 pza Cristal de 16 MHz
La práctica es para 1 grupo de 2
1 pza Resistencias de 10 kΩ estudiantes, la capacidad del
1 pza Capacitor de 100 nF Laboratorio es de 10 grupos
1 pza Cable USB para Arduino
1 pza Potenciómetro 10 kΩ
3 pza Display ánodo común.
3 pza Resistencia de 390 Ω
9
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 4
TEMPORIZADORES Y CONTADORES
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Configurar el Timer1 en modo CTC con interrupción, para que invierta el estado de un pin cada vez que
llega al valor de comparación. El valor de comparación debe cambiar mediante la lectura de un valor
analógico del voltaje de un potenciómetro, este valor debe ser mayor a 10. El prescaler del
temporizador debe ser de 256.
Parte 4.2
Usar el Timer0 en modo CTC con interrupción, para generar un tiempo de 8 ms, que se usará para
calcular un tiempo de un segundo. Usar el Timer1 en modo contador de eventos externos, para contar
pulsos por segundo en el pin T1. Cada segundo, mostrar en tres Display de 7 segmentos la cantidad de
pulsos por segundo. Usar un generador de señal cuadrada (0 V a 5 V) para generar los eventos.
Parte 6.1
Verificar que el tiempo de cambio de estado del pin cambia a medida que cambia el voltaje del
potenciómetro.
Parte 6.2
Verificar que en los displays se muestren los pulsos por segundo de la señal del generador y que este
valor varía a medida que cambia la frecuencia del generador. ¿Cuál es la relación entre el valor
mostrado y el valor del generador? ¿Cuál es el valor máximo de pulsos por segundo que puede medir el
microcontrolador en este caso?
Parte 6.3 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
2. COMPETENCIAS
El estudiante:
• Tendrá la capacidad de configurar los temporizadores del microcontrolador para generar señales
PWM.
• Implementará un programa que permita cambiar la frecuencia y el ciclo de trabajo de una señal PWM.
EQUIPOS
INSUMOS
1 pza Breadboard
1 pza Arduino UNO
1 pza Microcontrolador ATMEGA328P
2 pza Capacitor de 22 pF La práctica es para 1 grupo de 2
1 pza Cristal de 16 MHz estudiantes, la capacidad del
1 pza Resistencias de 10 kΩ Laboratorio es de 10 grupos
1 pza Capacitor de 100 nF
1 pza Cable USB para Arduino
1 pza 74LS08
11
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 5
GENERACIÓN PWM
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Realizar un programa que genere la siguiente señal cuadrada:
Para generar esta señal debe emplear PWM y puede usar dos de los temporizadores (TMR0, TMR1 o
TMR2) que a usted más le convenga.
Parte 6.1
Verificar por medio de un osciloscopio la forma de la señal deseada.
Parte 6.2 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
7.2 Explique para qué es útil el modo CTC en la generación de señales PWM.
12
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 6
INTERFAZ A TECLADO Y LCD
Un LCD es un visualizador alfanumérico de cristal líquido que recibe comandos y datos desde un
microcontrolador, y muestra caracteres en una determinada posición en un arreglo de filas por
columnas.
Un teclado matricial es un conjunto de interruptores, que se conecta a un microcontrolador en un
arreglo de filas y columnas. El microcontrolador lee el arreglo de interruptores y determina si una tecla
ha sido presionada, y cuál de ellas.
2. COMPETENCIAS
El estudiante:
• Desarrollará un programa que lea el estado de las teclas de un teclado matricial de 4X4.
• Desarrollará un programa que muestre en un LCD la tecla presionada.
EQUIPOS
Cantidad Unidad Descripción Observaciones
1 pza Fuente de Poder La práctica es para 1 grupo de 2
estudiantes, la capacidad del
1 pza Multímetro Digital
Laboratorio es de 10 grupos
1 pza Simulador PROTEUS
INSUMOS
Cantidad Unidad Descripción Observaciones
1 pza Breadboard
1 pza Arduino UNO
1 pza Cable USB para Arduino
1 pza Microcontrolador ATMEGA328P
1 pza Cristal de 16 MHz
2 pza Capacitor de 22 pF La práctica es para 1 grupo de 2
estudiantes, la capacidad del
1 pza Capacitor de 100 nF Laboratorio es de 10 grupos
1 pza Resistencias de 10 kΩ
1 pza LCD 2X16 paralelo
1 pza Teclado matricial de 4X4
1 pza Potenciómetro de 10 kΩ
1 pza Conversor TTL-USB
13
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 6
INTERFAZ A TECLADO Y LCD
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Realizar un programa que lea un teclado matricial de 4X4 y muestre en el LCD la tecla presionada.
Parte 6.1
Implementar el programa, simular, armar el circuito, grabar y probar el programa de lectura de teclado y
despliegue de la tecla presionada en el LCD.
Parte 6.2 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
14
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 7
CONVERTIDOR ANALÓGICO DIGITAL
El convertidor analógico digital (ADC) convierte un valor analógico aplicada a una entrada del
microcontrolador, en un código equivalente, que depende de la resolución del convertidor y del volteja
de referencia utilizado para la conversión.
2. COMPETENCIAS
El estudiante:
• Desarrollará un programa que realice la lectura de dos entradas analógicas del microcontrolador, cuyo
resultado será desplegado en un LCD.
INSUMOS
Cantidad Unidad Descripción Observaciones
1 pza Breadboard
1 pza Arduino UNO
1 pza Cable USB para Arduino
1 pza Microcontrolador ATMEGA328P
1 pza Cristal de 16 MHz La práctica es para 1 grupo de 2
1 pza Capacitor de 100 nF estudiantes, la capacidad del
2 pza Capacitor de 22 pF Laboratorio es de 10 grupos
Parte 4.1
Programar el microcontrolador para que realice la lectura de dos entradas analógicas, conectadas a dos
potenciómetros, y muestre los valores obtenidos por el ADC en un LCD.
15
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 7
CONVERTIDOR ANALÓGICO DIGITAL
Parte 6.1
Verificar que los valores mostrados en el LCD cambian a medida que se mueven los potenciómetros, en
un rango de 0 a 1023.
Parte 6.2 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
7.2 Explicar el proceso de cuantificación del ADC. ¿Cuál es el rango de valores del ADC del
microcontrolador?
16
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 8
PUERTO SERIAL UART
2. COMPETENCIAS
El estudiante:
• Capacidad de configurar el puerto serial del microcontrolador, enviar y recibir datos.
• Implementará un programa de comunicación serial entre el microcontrolador y el computador.
EQUIPOS
Cantidad Unidad Descripción Observaciones
INSUMOS
Cantidad Unidad Descripción Observaciones
1 pza Breadboard
1 pza Arduino UNO
1 pza Cable USB para Arduino
1 pza Microcontrolador ATMEGA328P
1 pza Cristal de 16 MHz
2 pza Capacitor de 22 pF La práctica es para 1 grupo de 2
1 pza Capacitor de 100 nF estudiantes, la capacidad del
1 pza Resistencias de 10 KΩ Laboratorio es de 10 grupos
17
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 8
PUERTO SERIAL UART
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Configurar el puerto serial para recibir comandos desde el computador. El sistema debe tener dos LEDs
conectados a dos salidas digitales y dos potenciómetros conectados a dos entradas analógicas. Los
comandos son, encender o apagar el LED 1, encender o apagar el LED 2 y enviar desde el
microcontrolador y mostrar en el computador el valor analógico de la entrada 1 o de la entrada 2, según
se requiera. Los comandos deben tener dos caracteres como mínimo (por ejemplo, e1, a1, e2, a2, c1,
c2).
Parte 6.1
Verificar la recepción de los comandos desde el computador y que el microcontrolador efectúe las
acciones correspondientes a cada comando. Verificar que la lectura de los valores analógicos pueda
verse correctamente en el computador.
Parte 6.2 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
18
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 9
COMUNICACIÓN SPI
2. COMPETENCIAS
El estudiante:
• Capacidad de configurar el puerto SPl del microcontrolador, enviar y recibir datos.
• Implementará un programa de comunicación SPI entre dos microcontroladores.
EQUIPOS
1 pza Breadboard
2 pza Resistencias de 10 kΩ
2 pza Potenciómetro de 10 kΩ
1 pza Conversor TTL-USB
19
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 9
COMUNICACIÓN SPI
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
Configurar uno de los microcontroladores como maestro y el otro como esclavo SPI (usar el modo 3). El
maestro realiza la lectura de un voltaje analógico (en un potenciómetro) y envía éste valor por el puerto
SPI. El esclavo recibe el valor enviado desde el maestro SPI y muestra el valor en un LCD y también lo
envía por el puerto serial para que se visualice en un terminal serial.
Parte 6.1
Verificar la variación de los datos en el LCD y el terminal serial conectados al microcontrolador esclavo
SPI, a medida que se cambia el valor en la entrada analógica del microcontrolador maestro. Los valores
deben ir desde 0 hasta 1023, correspondientes a los dos extremos del potenciómetro.
Parte 6.2 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
7.2 Explique la configuración del puerto SPI en el microcontrolador, como maestro y como esclavo.
20
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 10
COMUNICACIÓN I2C
2. COMPETENCIAS
El estudiante:
• Capacidad de configurar el puerto l2C del microcontrolador, enviar y recibir datos.
• Implementará un programa de comunicación I2C entre el microcontrolador y dispositivos I2C.
EQUIPOS
Cantidad Unidad Descripción Observaciones
1 pza Fuente de Poder
La práctica es para 1 grupo de 2
1 pza Multímetro Digital estudiantes, la capacidad del
1 pza Simulador PROTEUS Laboratorio es de 10 grupos
INSUMOS
Cantidad Unidad Descripción Observaciones
1 pza Breadboard
1 pza Arduino UNO
1 pza Cable USB para Arduino
1 pza Microcontrolador ATMEGA328P
1 pza Cristal de 16 MHz
2 pza Capacitor de 22 pF La práctica es para 1 grupo de 2
1 pza Capacitor de 100 nF estudiantes, la capacidad del
1 pza Resistencias de 10 kΩ Laboratorio es de 10 grupos
21
GUIAS DE PRÁCTICA MICROPROCESADORES I
Código de registro: RE-10-LAB-137 Versión 8.0
UNIVERSIDAD DEL VALLE
LABORATORIO DE MICROPROCESADORES I
PRÁCTICA Nº 10
COMUNICACIÓN I2C
4. TÉCNICA O PROCEDIMIENTO
Parte 4.1
El microcontrolador lee la temperatura mediante un termómetro I2C DS1621 y envía éste valor por el
puerto serial para que se visualice en un terminal serial. Se debe mostrar la temperatura con resolución
de ± ½ ºC.
Parte 4.2
Escribir en un display de 7 segmentos (ánodo común) mediante un circuito de expansión de salidas I2C
PCF8574, que se conecta al display. Mostrar un conteo de 0 a F de manera cíclica. El microcontrolador
envía datos mediante el bus I2C al PCF8574, que se conecta al display de 7 segmentos.
Parte 6.1
Verificar la variación de la temperatura que mide el DS1621, y que se muestre en el terminal serial.
Parte 6.2
Verificar la escritura correcta de los dígitos de 0 a F en el display de 7 segmentos, conectado al
microcontrolador mediante un dispositivo I2C PCF8574.
Parte 6.3 El informe que el estudiante debe presentar deberá contener los siguientes puntos:
• Objetivos.
• Marco teórico simplificado.
• Diseño del circuito.
- Cálculos.
- Códigos.
• Layout del circuito.
• Cuestionario.
• Conclusiones.
7. CUESTIONARIO
7.3 Explique el sistema de direccionamiento del bus I2C. ¿Cuál es la dirección base del DS1621? ¿Y
del PCF8574? ¿Cuál la diferencia con el PCF8574A?
22