Para iniciar la programación de uC AVR necesitamos instalar la Plataforma Integrada de Desarrollo (IDP) de ATmel, me refiero al Atmel Studio 7.
Aquí el enlace para la descarga : Atmel Studio 7.0.790
Instalado el software, pasaremos a crear nuestro primer proyecto.
Una vez abierto el software, en la parte izquierda veremos la figura 1 donde debemos dar click en “New Project”.
Luego debemos seleccionar el tipo de proyecto y el lenguaje (C, C++, ASM). En este ejemplo usaremos el lenguaje C como lo vemos en la figura 2.
Una vez seleccionado el lenguaje, debemos darle un nombre al proyecto, en nuestro caso lo llamaremos “First_project” (Figura 3). El software creará una carpeta con el nombre del proyecto en la ruta “C:\Users\user\Documents\Atmel Studio”.
Ahora debemos seleccionar el dispositivo que deseamos usar, en este caso seleccionamos el ATmega32.
A la derecha de la misma ventana veremos (figura 4) veremos una lista de las herramientas de depuración y programación que se pueden usar en el microcontrolador seleccionado. También un enlace a la hoja de datos del dispositivo (Figura 5).
Luego de dar click en en botón aceptar veremos el archivo main.c tal como en la figura 6. Aquí es donde debemos escribir nuestro programa.
En la figura 7 se muestra la aplicación desarrollada. En esta programa se tendrán dos entradas para dos pulsadores en el puerto B, y dos salidas para dos leds en el puerto D.
- En 11 se declaran dos variables de tipo unsigned char (uint8_t) para guardar en estado actual y el estado pasado de un pin de entrada.
- En 15 se ponen los el puerto B como entradas.
- En 16 activamos las resistencias pull up de los pines PB0 y PB1.
- En 17 se ponen los pines PD7 y PD3 como salidas para los led.
- En 20 preguntamos sí el pin PB0 fue presionado
- En 21 se pondrá a 1 el pin PD7 sí PB0 es 0. El código de la linea 22 es igual al de la linea 21.
- En 24 se pondr’a a 0 el pin PD7 si PB0 es 1. El código de la linea 25 es igual al de la linea 24.
- En 27 se guarda el valor anterior del pin PB1.
- En 28 se guarda el valor actual del pin PB1.
- En 29 se pregunta sí ocurrió un flanco de subida.
- En 31 se conmuta, usando un xor (^), el pin PD3. El código de la linea 32 es igual al de la linea 31.
En C podemos usar el operador :?, y gracias a esto podemos reducir las lineas 20 a 25 por el código de la figura 8.
En la figura 9 se muestra la equivalencia entre un if-else y el operador :?.
Luego debemos compilar el programa usando el botón de la figura 10.
Finalmente, tendremos como salida el archivo .hex (Figura 11) para poder programar nuestro microcontrolador.
Link Proyecto
Si queremos ver la numeración de lineas en nuestro ventana de edición tenemos que ir a Tools>Options (Figura 12).
Luego en “All Languages” seleccionamos “Line numbers” (Figura 13).
Muy bueno tu Blog, espero que sigas con los AVRS como los Xmega o AT32..
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminarhola si me pudieras ayudar, descargue Atmel Studio 7 y quiero realizar practicas con 89C52 pero al buscar el microcontrolador cuando creo el nuevo proyecto no lo encuentro.
ResponderEliminarhola si me pudieras ayudar, descargue Atmel Studio 7 y quiero realizar practicas con 89C52 pero al buscar el microcontrolador cuando creo el nuevo proyecto no lo encuentro.
ResponderEliminarGracias por el tutorial ojala este activo aun
ResponderEliminar