avr
TRANSCRIPT
Universidad Politecnica
Salesiana
Ingenieria Electronica
6to semestre
Sistemas Microprosesados
Ing Luis Oñate
Integrantes
Santiago Maldonado
Jimmy Andrade
Armando Alomoto
Universidad Politecnica Salesiana Sistemas Microprosesados
Informe de laboratorio AVR 1
Integrantes : Santiago Maldonado Jimmy Andrade Armando Alomoto
Objetivo: Realizar las practicas ya propuestas en clases, programar en el microcontrolador ATMEGA 16 tratando de entender y a la vez practicar la programación. Marco Teorico: Todos los microcontroladores AVR-ATmega disponen de varias modalidades de programación: paralela, por JTAG, por SPI o incluso por bootloader. Telecarga AVR implementa la programación vía SPI (Serial Downloading). En este modo de programación el software de programación y el microcontrolador se comunican intercambiándose comandos y datos vía SPI (Serial Peripheral Interface). Telecarga AVR emula una SPI a través de algunos de los pins del puerto paralelo del PC, y es través de estos, mediante los que envía los comandos y datos correspondientes a las operaciones que desea hacer sobre el micro: escribir en flash, escribir en eprom, consultar los fuse bits etc. Los comandos y los pines para la programación SPI pueden variar en los diferentes modelos de AVR-ATmega, no obstante el programa es capaz de trabajar sobre diferentes modelos, solo hay que especificar en la lista desplegable el Microcontrolador con que se desea trabajar: - AT-x-8515 - AT-x-8535 - ATmega8 - ATmega16 - ATmega32 - ATmega64 Telecarga AVR permite modificar el contenido de la memoria Flash, de la memoria Eprom, los Fuse bits o los Lock bits del micro ( en los modelos que lo permiten vía SPI). Así, para modificar el estado de las memorias basta con Resetearlas primero, Abrir luego el fichero .hex con el contenido a grabar, y finalmente Programarlo. Existen otras opciones, como las que permiten Leer el contenido de las memorias, Verificar que el contenido se ha grabado correctamente etc.
Datasheet: Para la practica se utilizo en microcontrlador ATMEGA 16
Figura 1
PROCEDIMIENTO PRACTICO
Transmisión y recepcion de datos utilizando el microcontrolador ATAMEGA16
Para facilitar la trasmisión y una buena oscilación se recomienda utilizar un cristal de 8000000MHZ.
ALGORITMO Proceso:
Defino las Variables
Configuro el puerto que desee trabajar
Escribo en el puerto D el valor que desee en Hexadecimal
End
EJERCICIO #1 Escritura en un puerto del microcontrolador Atmel AVR 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. Descripción del programa Este programa escribe el valor 55 Hexadecimal en el puerto D. DIAGRAMA DE FLUJO
CODIGO regfile "m164pdef.dat" ‘libreria de trabajo del ATMEGA 16’ crystal = 8000000 ‘cristal a utilizar 8000000MHZ’ Ddrd = 255 ‘se especifica el puerto D como salida’ Config Portd = Output ‘se inicializa el puerto D como salida ’ Do ‘inicio de un lazo infinito’ Portd = &B1010_1010 ‘se escribe en el puerto el valor de 55 hexadecimal’ Loop ‘fin de lazo’ End ‘fin de programa’
Diagrama esquemático
Simulación
figura #2
fotografía
Ejercicio #2 Este programa escribe en un pin del puerto D DIAGRAMA DE FLUJO
Codigo $regfile "m164pdef.dat" $crystal = 8000000 Ddrd = 255 Config Portd = Output Portd = 0 Do Portd.1 = 1 Loop End DIAGRAMA ESQUEMATICO
SIMULACION EN PROTEUS
FOTOGRAFIA
Ejercicio # 3 en el ejercicio 1 cambiar el valor de &b1010_1010 por el siguiente numero decimal portd=240 Diagrama de flujo
Codigo $regfile "m164pdef.dat" $crystal = 8000000 Ddrd = 255 Config Portd = Output Do Portd = 240 Loop End DIAGRAMA ESQUEMATICO
SIMULACIÓN EN PROTEUS
FOTOGRAFIA
Ejercicio # 4 Diagrama de flujo
Codigo Este programa escribe en el puerto D el valor ingresado por el puerto B. $regfile "m164pdef.dat" $crystal = 8000000 Ddrd = 0 Ddrd = 255 Config Portd = Output Config Portb = Input Dim A As Byte Do A = Pinb Portd = A Loop End
Diagrama esquematico
Simulación
Fotografia
Ejercicio # 5
Tablas de verdad Utilizando el esquema del tema dado en clase se comprobara el uso de las funciones logicas or,xor y not Diagrama de flujo
Codigo Este programa escribe en el puerto D el valor ingresado por el puerto B. $regfile "m164pdef.dat" $crystal = 8000000 Ddrb = 0 Ddrd = 255 Config Portd = Output Config Portb = Input Dim A As Bit , B As Bit , C As Bit , D As Bit Do A = Pinb.0 And Pinb.1 Portd.0 = A B = Pinb.2 Or Pinb.3 Portd.1 = B C = Pinb.4 Xor Pinb.5 Portd.2 = C D = Not Pinb.6 Portd.3 = D Loop End DIAGRAMA ESQUEMATICO
SIMULACIÓN EN PROTEUS
Fotografia
Tablas
Ejercicio # 6 En el programa 1 cambiar el valor &B1010_1010 por el siguiente numero decimal portd=240 Diagrama de flujos
CODIGO Este programa escribe en el puerto D el valor ingresado por el puerto B. $regfile "m164pdef.dat" $crystal = 8000000 Ddrb = 0 Ddrd = 255
Config Portd = Output Config Portb = Input Dim A As Bit , B As Bit , C As Bit , D As Bit Do A = Pinb.0 And Pinb.1 B = Not Pinb.2 C = A Or B Portd.0 = C Loop End Tabla de verdad
Diagrama Esquematico
Simulación
Fotografia
Conclusiones 1.-Por lo que pudimos observar al realizar y al programar microcontroladores avr comprendimos que es de mucha ayuda en el mundo electrónico ya que se pueden realizar muchos circuitos de una manera fácil y muy rápida ahorrando tanto tiempo como dinero. 2.- Una de las cosas que me llamo la atención es que pudimos realizar operaciones de compuertas lógicas como en el mundo digital y sin utilizar muchas compuertas lógicas tan solo programando en el microcontrolador AVR podemos realizar estos ejercicios de una manera muy sencilla. Bibliografía Hojas de prácticas de Avrs Hoja de datos del Atemaga 164p.- enlace http://www.datasheetcatalog.org/datasheet/atmel/2466S.pdf.- fecha de enlace: 14/10/2010 INTERNET: Tema: “Programación de Avrs”.- enlace.- http://www.tolaemon.com/proyectos/telavr.htm fecha de enlace: 14/10/2010 Asdrúbal López Chau.- “Microcontroladores Avrs” pp 14 – 20.- enlace: http://books.google.com.ec/books?id=wSEjrFxjUr4C&pg=PA14&dq=programacion+de+avrs&hl=es&ei=vt64TMnGM4eglAeriuHIDQ&sa=X&oi=book_res
ult&ct=result&resnum=1&ved=0CCcQ6AEwAA#v=onepage&q&f=false.- fecha de enlace: 14/10/2010