Pues en esta ocasión traigo solo unas herramientas para desarrollar proyectos con microcontroladores de Atmel®
En primer lugar necesitamos tener un sistema de desarrollo desde el IDE hasta el programador. Lo podemos tener en Win**** o en Linux. Hay muchas guias y mucho software que podemos utilizar para tener un entorno de desarrollo adecuado. Aquí no pretendo desarrollar una guia para cada sistema operativo, pero dejo los links de las guias que me parecieron mas claras o del software que me pareció fácil de usar.
Entornos de desarrollo
Para tener un entorno de desarrollo en Win****:
La opción mas usual o por donde la mayoría empezamos es por el atmel studio
- Pros: es la herramienta oficial, gran soporte, se instala fácil
- Contras: Es algo pesado para descarga, puede tener herramientas que no necesitamos (para ARM por ejemplo), solo soporta algunos programadores (los de atmel principalmente)
Otra de las opciones comunes es usar WINAVR junto con eclipse y eclipse-avr plugin:
- Pros: Es opensource, hay una comunidad enorme de desarrollos, dije gratis? no, bueno es gratis; muchos programadores pueden trabajar con este paquete de desarrollo (incluyendo los de atmel 😉 ) por medio de AVR-dude (incluido)
- Contras: Hay que instalar por separado el compilador (winavr) después el IDE (eclipse) y después hacer que trabajen juntos (avr-eclipse plug-in)
- Variaciones: uno puede usar en toolchain de Atmel en vez de WINAVR
Un link para configurar esto. O estos otros.
La versiones de PAGA:
Mi favorito: CodeVision
- Pros: se instala facil, buen «wizard», excelente optimizacion de codigo ya sea en velocidad o tamaño, librerias para manejo de hardware externo.
- Contras: acepta pocos programadores, hay que auxiliarse de programas externos, el wizard promueve la programación monolítica (todo en un archivo) terrible para proyectos grandes.
ICC:
- Pros: Excelente wizard, el ide es codeblocks.
- Contras: lo mismo que el anterior, además de que el soporte de dispositivos es un poco limitado.
Para Linux:
Esta guia te dirá como instalar avr-gcc + eclipse + plug-in en Linux. Es de lo mejor que me he encontrado
Y esta Kontroller Lab: es, es…. es algo viejon jajaja pero esta bueno
- Variación: pueden cambiar el toolchain por el de atmel.
Programadores
Bueno, ya tenemos el entorno de desarrollo el compilador y shalalalalalaa… Pero ¿cómo pasamos nuestro programa al microcontrolador?
Hay muchos programadores de AVRs que se pueden usar, solo basta echar un vistazo a mercado libre jejejeje.
En mi caso me ha resultado esta combinación como la ganadora:
avrdoper con avrdude
Ya que uso win**** y Linux me interesaba un programador que fuera compatible con ambos. para el caso del avrdoper, pueden hacer ustedes mismos o comprar uno pre-armado.
En mi caso, tengo uno armado jejeje
Si estan pensando en usar un compilador de paga, no van a encontrar soporte o integración para usar el avrdoper, para solucionar esto uso el avr8 burn-o-mat. es un gran GUI para usar el avrdude en windows o en linux
Extras
Suponiendo que ya tenemos un entorno de desarrollo completamente instalado y funcional. La pregunta surge: ¿Que demonios hago? Bueno, la verdad no se que se les pueda ocurrir, o a lo mejor buscan ideas o desean implementar algún proyecto o código.
El lugar por excelencia para el desarrollo con microcontroladores AVR® es sin lugar a dudas AVRFreaks!!! Una comunidad donde podras encontrar la respuesta a tus dudas, desde las mas ligeras hasta problemas que solo los gurus de alli conocen. Ademas los usuarios publican codigos, proyectos, tutoriales, etc….. la mejor comunidad para el desarrollo en microcontroladores (si texas instruments tuviera algo así como MSP430Freaks o StellarisFreaks 😛 … snif snif)
Cuando estamos configurando el hardware de cualquier microcontrolador, que mejor que usar herramientas que simplifiquen el proceso, yo se que a los puristas (y algunos payasos) les molesta la idea de usar wizards o herramientas de configuración rápida, por el hecho de que no controlan como lo configuran. Pero bueno, hay de gustos a gustos.
Si usan CodeVision o ICC el wizard que traen basta y sobra!! pero si usan AVR-GCC (win o linux) pues no hay una herramienta definitiva para configuracion de hardware, asi que aqui estan unas propuestas:
AVR-Wizard: Solo srive para pocos (muy pocos) modelos de la serie ATmega, pero esta bien hecho y recuerda mucho al wizard que trae el CodeVision. Corre en win****
AVR Fuse Calculator: Aplicación en linea para configurar los fusible (frecuencia de operación, cristal o interno, etc). Tiene muchos modelo y general la linea de codigo para usarla con avrdude.
AVR Calc: Una calculadora para el hardware de nuestro procesador, muy buena para calcular el valor de los registros del timer, de la uart, del watchdog, etc. (corre en win****)
AVR SPI for iphone: Bueno, es una herramienta para configurar el spi del avr, mediante el iphone/ipod
AVR Simulator for iphone: Una aplicación capaz de ejecutar código…. en ensamblador :S
Y bueno, si tienen alguna aplicación que quieran compartir, es bienvenida.
Espero les sea de utilidad para desarrollar proyector con AVRs
Sin mas por el momento…
Argos