Informe Practica 2 Avr

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Informe Practica 2 Avr as PDF for free.

More details

  • Words: 593
  • Pages: 14
UNIVERSIDAD POLITÉCNICA SALESIANA

INGENIERÍA ELECTRÓNICA

SISTEMAS MICROPROCESADOS

Tema: CONTROL DE PUERTOS

INFORME Nº 2 AVR

INTEGRANTES: GARCÍA PATRÍCIO SALGADO CRISTIAN

Ejercicio 1 Uso del comando rotate Podemos visualizar como se encienden los leds de izquierda a derecha en forma secuencial Var = Variable Left = Izquierda Right = Derecha

Código

Algoritmo: Entradas: rotación de izquierda a derecha Salidas: código binario en los pines D0 al D7 Procesos: -

Defino Variables Inicializo cada variable (A) Establecemos el puerto D como Salida. Iniciamos el lazo Escribimos el valor de A en cada pin del puerto D (De izquierda a derecha y de derecha a izquierda)

Diagrama de flujo INICIO

Especificar el puerto D como salida Defino variables A e I A=1

for I= 1 a 8 Rotar hacia la izquierda Retardo

for I= 1 a 8 Rotar hacia derecha Portd=A

Simulación

Ejercicio 2 Utilización de display de 7 segmentos El siguiente programa nos permite visualizar en un display de 7 segmentos , datos que van desde 0 hasta 9 en forma ascendente

Algoritmo: Entradas: números del cero al nueve en forma ascendente Salidas: Se escribe en el puerto D el incremento del cero al nueve en Forma repetitiva Procesos: Código

Establecemos el puerto D como Salida. Defino Variables Inicializo cada variable (A) Incrementamos la variable(A) y la comparamos con 10 Escribimos el valor de A en el puerto D

Diagrama de flujo INICIO

Especificar el puerto D como salida Defino variable A

A=0

Retardo

Incr A

Si A=10

No Portd=A

Simulación

Ejercicio 3 Manejo de display de 7 de segmentos con barrido En este ejemplo se escribe los números del 0 al 99 en forma ascendente

Algoritmo: Entradas: números del 0 al 99 Salidas: Se escribe en el puerto D el incremento de 0 al 99 en forma repetitiva Procesos: Código

Establecemos el puerto D como Salida. Defino Variables Inicializo cada variable (para cada display) Hacemos un barrido Escribimos en cada puerto

Diagrama de flujo INICIO Especificar el puerto D y C como salida

Defino variable A, B, I A=0 B=0 I =0

PorD=A PortC=1 Retardo PorD=B PortC=2 Retardo

Incremento I

I=2000

Incremento B

B=10

B =0

Incremento A

A=10

A =0

I=0

Simulación

Ejercicio 4 El comando RND nos permite generar números aleatorios Var = RND(Limite) Var = Variable donde se guarda un numero aleatorio Limite = el numero máximo Aleatorio

Algoritmo: Entradas: Salidas: Código en binario de los números aleatorios Procesos: - Establecemos el puerto D y C como Salida. - Defino Variables ¨Mayor¨ para decenas ¨Menor¨ para unidades - Se guarda el valor en una variable - Escribimos en cada puerto Código

Diagrama de flujo INICIO

Especificar el puerto D como salida Defino mis variables H, A , Mayor , Menor

H=rnd(99)

H= makebcd(h)

PortD= Menor Portd=2 Retardo

PortD= Mayor PortC=1 Retardo

Simulación

Ejercicio 5 - Utilización del comando GOSUB y GOTO - Gosub permite ejecutar subrutinas repetitivas

Algoritmo: Entradas: Voltaje TTL (5V) en el puerto B(B0y B1) Salidas: Encendido y apagado 1º led forma repetitiva Encendido y apagado 2º led forma repetitiva Procesos: Código

Establecemos el puerto D como salida y B como Entrada Inicio el lazo Llamo a las subrutinas Escribo con intervalos de tiempo el valor de 1y 0 en el Puerto D(D1 o D2 dependiendo de la entrada)

Diagrama de flujo

INICIO For I = 1 to 3 Especificar el puerto D como salida y B como entrada

Portd.1=1 Retardo

Defino variable I Portd.1=0

si Retardo Pinb.0=1

Gosub sub1

no

For I = 1 to 3

si Pinb.1=1

Gosub sub2

Portd.2=1 Retardo

no Portd.2=0 Retardo

Simulación

Retardo

Anexos

Related Documents