Informe AVR ATMEGA16
-
Upload
oscarayala88 -
Category
Documents
-
view
1.102 -
download
4
Transcript of Informe AVR ATMEGA16
SISTEMAS MICROPROCESADOS 1 UPS
UNIVERSIDAD POLITECNICA SALESIANA
INTEGRANTES:
OSCAR AYALA
CHRISTIAN IBARRA
ANDRES VALDIVIESO
CURSO:
SEXTO ELECTRONICA
1
SISTEMAS MICROPROCESADOS 1 UPS
INFORME No. 3
TEMA: Entrada y Salida en el microcontrolador.AVR (ATMEGA 16)
OBJETIVO: Optimizar el uso de los puertos del micro controlador AVR (ATMEGA 16),
como interface de datos digital.
DESARROLLO
En la práctica vamos a utilizar el micro controlador AVR (Atmega16) y su
correspondiente diagrama de pines y características.
Figura 1. Diagrama de pines de Atmega16
Para la programación del Atmega16 necesitamos un programador de AVR y escribir el
archivo HEX generado por un software especializado llamado BASCO.
Programadora para AVR
2
SISTEMAS MICROPROCESADOS 1 UPS
Presentacion de Basco
EJERCICIOS DE CONTROL DE PUERTOS
1.- ESCRITURA EN UN PUERTO DEL MICORCONTROLADOR AVR ATMEGA 16
PROBLEMA
Para escribir en un puerto se debe, habilitar mediante el comando DDRX= 255
como salidas y escribir el valor 55Hexagesimal en el puerto D.
ALGORITMO
Inicio: Habilitar el puerto D como salida
Proceso: Escribir 55h en el puerto D
Salida: Visualizar en el puerto D 0L ó 1L al valor 55h por medio de diodos LED
CÓDIGO
'programa 1.1
$regfile = "m16def.dat" 'libreria de trabajo del ATMEGA 16
$crystal = 8000000 'cristal a utilizar 8MHz
Ddrd = 255 'se especifica el puerto D como salida
Config Portd = Output ' se inicializa el puerto D como salida
Do 'inico de un lazo infinito
Portd = &B1010_1010 'se escribe en elpuerto el valor 55h
Loop 'fin de lazo
End
3
SISTEMAS MICROPROCESADOS 1 UPS
DIAGRAMA DE FLUJOS
Esquemático: Utilizamos el microcontrolaor AVR Atmega16
GRAFICO ANEXO
4
INICIO
Habilitar y escribir el valor 55h en el puerto D como
salida
Visualizar Datos en el puerto D
SISTEMAS MICROPROCESADOS 1 UPS
2.- ESCRITURA EN UN PUERTO DEL MICORCONTROLADOR AVR ATMEGA 16
PROBLEMA
Escribir el valor 240 en el puerto D.
ALGORITMO
Entrada: Habilitar el puerto D como salida
Proceso: Escribir 240 en el puerto D
Salida: Visualizar en el puerto D 0L ó 1L al valor 240 en base binaria por medio de diodos LED
CÓDIGO
Practica 2
$regfile = "m16def.dat" 'libreria de trabajo del ATMEGA 16
$crystal = 8000000 'cristal a utilizar 8MHz
Ddrd = 255 'se especifica el puerto D como salida
Config Portd = Output ' se inicializa el puerto D como salida
Do 'inico de un lazo infinito
Portd = 240 'se escribe en elpuerto el valor 240
Loop 'fin de lazo
End
5
SISTEMAS MICROPROCESADOS 1 UPS
Diagrama de Flujos
Esquemático: Utilizamos el Atmega16
GRAFICO ANEXO:
6
INICIO
Habilitar y escribir el valor 240 binario en el puerto D
como salida
Visualizar Datos en el puerto D
SISTEMAS MICROPROCESADOS 1 UPS
3.- LECTURA Y ESCRITURA EN PUERTOS
PROBLEMA
Para leer en un puerto de un microcontrolador AVR se utiliza el comando PIN,
Además se va ha introducir al uso de variables.
ALGORITMO
Inicio: Habilitar el puerto B como entrada y habilitar el puerto D como salida
Proceso: Defino variables
Salida: visualizar en el puerto D las entradas de B
CÓDIGO
EJERCICIO 3
$regfile = "m16def.dat" 'libreria de trabajo del ATMEGA 16
$crystal = 8000000 'cristal a utilizar 8MHz
Ddrb = 0 'se especifica el puerto B como entradas
Ddrd = 255 'se especifica al puerto D como salida
Config Portd = Output ' se inicializa el puerto D como salida
Config Portb= Input ' se inicializa el puerto B como entrada
Dim A As Byte ' Se define la variable A tipo byte
Do 'inico de un lazo infinito
A= Pinb ' Se lee en la variable A los datos en el Puerto B
Portd=A ' se escribe en el puerto d los datos del puerto B
Loop ' fin de lazo
End ' fin de programa
7
SISTEMAS MICROPROCESADOS 1 UPS
Diagrama de Flujos
Esquemático
8
INICIO
Habilitar el puerto B como entrada
Visualizar en el puerto B
Habilito el puerto D como salida
Definir la variable A para leer y escribir en el puerto D
SISTEMAS MICROPROCESADOS 1 UPS
GRAFICO ANEXO:
4.- ESCRIBIR EN UN PIN DEL PUERTO D
PROBLEMA
Escribir en un pin del puerto D
ALGORITMO
Inicio: Habilitar en el puerto D
Proceso: ingresar un valor lógico al pin.
Salida: Visualizo en el pin 2 del puerto D.
CÓDIGO
$regfile = "m16def.dat" 'libreria de trabajo del ATMEGA 16
$crystal = 8000000 'cristal a utilizar 8MHz
Ddrd = 255 'se especifica el puerto D como salida
Config Portd = Output ' se inicializa el puerto D como salida
Portd = 0
Do 'inico de un lazo infinito
Portd.1 = 1
Loop 'fin de lazo
End
9
SISTEMAS MICROPROCESADOS 1 UPS
Diagrama de Flujos
Esquemático:
GRAFICO ANEXO:
CONCLUSIONES
10
INICIO
Habilito el puerto D como salida y escribo el valor
Visualización de Datos en pin1 del puerto D
SISTEMAS MICROPROCESADOS 1 UPS
La programación para microcontroladores AVR ATMEGA 16 AVR no es muy
compleja al momento de utilizar y controlar los puertos se logro entender
mejor el funcionamiento de algunos códigos y poder comprobar que los
algoritmos básicamente son como lo de los PIC y muchas de sus
operaciones son casi iguales
Los programas de AVR se los realizo en un software llamado Bascom.
BIBLIOGRAFÍA
Hoja de prácticas de microcontroladores AVR proporcionados por el Ing. Luis
Oñate.
11