Universidad Politécnica Salesiana Ingeniería Electrónica
Sistemas Microprocesados
INFORME DE LABORATORIO II AVR UTILIZACIÓN DE DECLARACIONES CON MICROCONTROLADOR ATMEGA16
Integrantes:
Juan Villacís S.
Gabriela Chicaiza
Ing. Luis Oñate Periodo Sept./2009-feb/2010
Tema: Utilización de declaraciones con el microcontrolador ATMEGA Objetivo: Utilizar los puertos del microcontrolador AVR, e implementar en la programación la utilización de declaraciones. Desarrollo de las Prácticas del laboratorio de Sistemas Microprocesador. Ejercicio 1 Var=variable Left=izquierda Right=derecha
Desarrollo del ejercicio Determinar: Entradas: Rotacion de izquierda a derecha 8 repeticiones Salidas: Codigo binario rotando de izquierda a derecha 8 veces . Procesos: o o o o o o o o o o
Definir variables Guardar valor de la variable Inicializar el puerto D como salida Iniciar lazo que se repite 8 veces Escribir el valor de A en el puerto D Se desplaza de izquierda a dercha un Bit Iniciar lazo que se repite 8 veces Escribe de derecha a izquierda un bit Retardo de 500ms Fin del lazo
Diagrama de Flujo INICIO Declaro variables A, I
A=1 Portd=A
For I=1 to 8
Portd=A Rótate A, left
Retardo 500ms
I=0 For I=1 to 7 Rótate portd, Right
Retardo 500ms Codificación:
Esquemático
Simulación
2.- Utilizar un Display de 7 segmentos. En el siguiente programa permite visualizar en un display de 7 segmentos, datos que van desde 0 hasta 9 en forma ascendente. Desarrollo del ejercicio Determinar: Entradas: numero del 0-9 de forma ascendente. Salidas:escribe el incremento del 0 -9 de forma ascendente
Procesos:
Configurar el puerto de como salida Defino una variable Incremento la variable Comparo el valor de A=10 Escribo el valor de la variable en el puerto Retardo 500ms.
Diagrama de Flujo INICIO Defino la Variable A
Ddrd=0
A=0 Portd=A Retardo 500md Incremento a Incr A A=10 si
no
Codificación: Esquemático
Simulación
Si se desea decrementar una variable en Bascom se debe utilizar el comando DECR
Ejercicio 3.Manejo de Display de siete segmentos con barrido En este ejemplo se escribe un numero entre 0 -99 en forma ascendente Determinar: Entradas: Numero binario entre 0-99 Salidas: escribir en el puerto el valor de 0-99 de forma ascendente. Procesos: Configuro los puertos Defino mis variables Inicio mi ciclo doy valores a mis variable comparo I=2000 incremento mis variables para cada display hago un barrido escribo el valor en cada puerto retardo 10 watius. Diagrama de Flujo INICIO
Defino mis variables A, B, I, H
A=0
B=0
Portc=1 Portd=A
Incremento=I I=2000
Incr B
B=10
B=0 Incr A
A=10
A=0
I=0
Codificación:
Esquemático
Simulación
Ejercicio
4.
Utilice la analizara el comando RND, que generar números aleatorios. Var= RND (Limite) Var=Variable donde se guarda un número aleatorio Limite=El máximo número aleatorio. Determinar: Entradas: Genera número Aleatorio Salidas: Codigo binario numero aleatorio Procesos: o o o o
Defino mis variables Defino el Mayor para decenos Defino el Menor para las Unidades Limite de numeros 0-99 variable H
figura 3, se permite
o Se guarda el valor en una variable o Escribo el valor en el Microcontrolador Diagrama de Flujo INICIO
Defino mis variables I, H, Menor, Mayor
H=Rnd (99)
H=makebcd (H)
Portd Menor Portc=2
Retardo 100ms Portd Menor Portc=1 Retardo 100ms Codificación:
Esquemático
Simulación
Si es necesario calibrar los barrido Ejercicio 5. 5.- Utilización comando GOSUB y GOTO GOSUB: permite repetir subrutinas repetitivas. Determinar: Entradas: Prender y apagar un led por 3 veces Prender y apagar 2° led por 2 veces Salidas: Codigo binario prendido y apagado 1° led Codigo binario prendido y apado 2° led Procesos: o Defino mi variable o Inicializo lazo
tiempos de
o o o o o o o
Llamo mi subrutina 1 Prende y apaga un led 3 veces Retorna a programa principal Llamo mi subrutina 2 Prende y apaga 2° led 2 veces Retorna programa principal. Con el pulsante presiondo apagamos el primer led.y deja de funcionar por 1 s.
Diagrama de Flujo INICIO
Defino Variable I
Pinb.0=0
Gosub Sub1
Pinb.1=0
Gosub Sub2 Codificación:
Esquemático
Simulación
Conclusiones: • •
Debemos conocer y practicar mas para las próximas practicas ya que al ser extensas requieren de mucho mas tiempo Tener bien armado y programado cada uno de los laboratorios para poder seguir avanzando.
Recomendaciones: • • •
Leer el Data Sheet y su correcto funcionamiento en el ATMEGA16. Utilizar los comandos de programación adecuados para cada práctica. Seguir con la guía y probar cada uno de los elementos para su correcto funcionamiento.