Post on 14-Jun-2015
Universidad Politécnica Universidad Politécnica Universidad Politécnica Universidad Politécnica
SalesianaSalesianaSalesianaSalesiana
Ingeniería ElectrónicaIngeniería ElectrónicaIngeniería ElectrónicaIngeniería Electrónica
Sistemas
Microprocesados
INFORME DE LABORATORIO INFORME DE LABORATORIO INFORME DE LABORATORIO INFORME DE LABORATORIO
MICROCONTROLADOR ATMEL AVRMICROCONTROLADOR ATMEL AVRMICROCONTROLADOR ATMEL AVRMICROCONTROLADOR ATMEL AVR
TEMA:TEMA:TEMA:TEMA:
CONTROL DE PUERTOS EN EL MICROCONTROLADOR CONTROL DE PUERTOS EN EL MICROCONTROLADOR CONTROL DE PUERTOS EN EL MICROCONTROLADOR CONTROL DE PUERTOS EN EL MICROCONTROLADOR
ATMEGA16ATMEGA16ATMEGA16ATMEGA16
IIIIntegrantes:ntegrantes:ntegrantes:ntegrantes:
� LUIS HERNANDEZLUIS HERNANDEZLUIS HERNANDEZLUIS HERNANDEZ
� JUAN DAVID HERRERAJUAN DAVID HERRERAJUAN DAVID HERRERAJUAN DAVID HERRERA
Tema:
1.1.Escritura en el microcontrolador ATMEL AVR CO� ATMEGA16
Introducción :
Para escribir en un puerto se debe, habilitar mediante el comando DDRX=255. Como
salidas, luego se procede a escribir el valor en el puerto.
� 1.- Escribir el valor 55 hexagesimal en el puerto D
ALGORITMO:
� E#TRADAS :
�UMERO HEXADECXIMAL 55H
� PROCESO:
� CO#FIGURARA EL PUERTO D
� ESCRIBIR E# EL PUERTO D EL VALOR DE 55H
� I#ICIAR U# LAZO WHILE
� FI#ALIZAR EL LAZO WHILE
� SALIDA :
PUERTO D CO� VALOR 55H
DIAGRAMA DE FLUJO
INICIO
Habilitar el Puerto D
como salida Ddrd=255
Escribir el valor 55H
en el puerto B
Config Portd=Output
Puerto D esta
en 1 Lógico
FI#
MIE�TRA
� CODIGO
ESQUEMATIZADO
VISULALIZACIO# DEL MODULO
� 2.- Este programa escribe en un pin del puerto D
ALGORITMO:
� Entradas:
Pin a escribir
� Procesos:
� Configurar el puerto
� Iniciar un lazo while
� Escribir en un Pin del puerto D
� Fin del lazo While
� Salidas:
Dato a escribir en un pin del puerto D
DIAGRAMA DE FLUJO
INICIO
Habilitar el Puerto D
como salida Ddrd=255
Escribir en un pin del
puerto D
Config Portd=Output
Portd.1=1
FI#
MIE�TRA
Portd=0
CODIGO:
ESQUEMATIZADO
VISULALIZACIO# DEL MODULO
� 3.- Ejercicio cambiar el valor &B1010_1010,por el siguiente numero decimal
Portd=240
ALGORITMO:
� Entradas:
�umero binario 1111 0000
� Procesos:
� configurar el puerto
� escribir en el puerto el valor de F0 hexagesimal
� Salidas:
Escribir en el puertoD el valor de F0 en hexagesimal.
DIAGRAMA DE FLUJO
CODIGO:
INICIO
Ddrd=240
FIN
Portd=F0
Config Portd=Output
ESQUEMATIZADO
VISULALIZACIO# DEL MODULO
4.- Lectura y escritura en puertos.
Para leer en un puerto de un micro controlador AVR se utiliza el comando PI# .
además se va ha introducir al uso de variables.
ALGORITMO:
� Entradas:
Dato en la variable A
� Procesos:
� Definir una Variable
� Guardar el valor de la Variable
� Se inicializa el puerto D como salida
� Se inicializa el puerto B como entrada
� Inicio de lazo infinito WHILE
� Lee en la variable A los datos escritos en el puerto B
� Se escribe en el puerto D los datos leidos en el puerto B
� fin del lazo WHILE
� Salidas:
Datos de la variable A escritos en el puerto B
DIAGRAMA DE FLUJO
INICIO
Definir la
Variable A
FIN
A=Pinb
Config Portd=Output
Ddrb=0
Ddrd=255
Config Portb=Input
Portd=A
A=Pinb
MIENTRAS
CODIGO:
ESQUEMATIZADO
VISULALIZACIO# DEL MODULO
� 5.- Tablas de Verdad
Utilizando el esquema del tema o ejercicio 4 se comprobara el uso de las funciones
ALGORITMO
� Entradas:
Datos de las variables A,B,C,D
� Procesos:
� Definir las Variables A,B,C,D
� Guardar el valor de lasVariables
� Se inicializa el puerto D como salida
� Se inicializa el puerto B como entrada
� Operaciones con funciones logicas and or Xor not
� Resultados en puertos A,B,C,D
� Salidas:
Codigo binario escrito en el puerto D
DIAGRAMA DE FLUJO
INICIO
Defino Variable A, B, C, D
FIN
A=Pinb.0 And Pinb.1
Config Portd=Output
Ddrb=0
Ddrd=255
Config Portb=Input
Pord.0=A
B=Pinb.2 Or Pinb.3
Pord.1=B
C=Pinb.4 Xor Pinb.5
Pord.2=C
D=not Pinb.6
Pord.3=C
CODIGO:
ESQUEMATIZADO
VISULALIZACIO# DEL MODULO
� Ejercicio 6.
Ejercicio Propuesto: Crear la tabla de la siguiente función booleana: (A and B) OR
(#ot C)
Tabla de Verdad Propuesta
ABC (AB)+/C
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
ALGORITMO
� Entradas:
VALORES DE LAS VARIABLES A,B,C
� Procesos:
� Definir las Variables A,B,C
� Guardar el valor de lasVariables
� configurar los puerto
� Se inicializa el puerto D como salida
� Se inicializa el puerto B como entrada
� Realizacion de Operaciones con funciones logicas A�D OR
� Salidas:
Codigo binario escrito en el puerto D
DIAGRAMA DE FLUJO
CODIGO:
INICIO
Defino Variable A, B, C,
FIN
A = Pinb.0 And Pinb.1
Config Portd=Output
Ddrb=0
Ddrd=255
Config Portb=Input
B = Not Pinb.2
C = A Or B
Portd.0 = C
ESQUEMATIZADO
VISULALIZACIO# DEL MODULO
Conclusiones:
• Tener en mente la configuración del Antmega16 y su distribución de pines en la
programación.
• Llevar armado para no perder tiempo en la practica en el laboratorio
• Saber la configuración para su programación tanto de entradas como de salidas
del micro.
Recomendaciones:
• Leer el datasheet e informarse de todas sus funcionalidades ya que es primordial
saber bien su funcionamiento y aplicación para implementar su hardware y
software.
• Al implementar el hardware externo saber la configuración con el datasheet y su
conexión como se explica en la hojas guías.
• Llevar la programadora y saber instalar el software para su correcto
funcionamiento en el ATMEGA16.
BIBLIOGRAFIA:
� APU�TES TOMADOS E� CLASE
� HOJAS DADAS E� SISTEMAS MICROPROCESADOS 1
� ELECTRO�ICA PRACTICA CO� MICROCO�TROLADORES
PIC,SA�TIAGO CORRALES V.
� Microcontroladores "PIC": diseño práctico de aplicaciones. Segunda Parte : el
PIC12F508 y PIC16F84A : lenguajes Emsamblador, C y PBASIC
Microcontroladores"pic": Diseño práctico de aplicaciones, José María Angulo
Usategui, Edición 4, Editor McGraw-Hill, Interamericana de España