Experiencia de primera mano con Linux AVR IDE

8

Estoy buscando información para obtener un buen entorno de desarrollo integrado configurado para la programación AVR en Linux (Assembly y C).

Mis estudios me dieron una experiencia práctica limitada con AVR, pero me temo que me estoy oxidando un poco, así que quiero estar ocupado con algunos proyectos pero también quiero persistir en realizar todo el desarrollo en Linux.

Utilizo USBtinyISP de Ladyada y he estado programando mis chips con AVRdude, pero todavía no he encontrado un IDE que funcione como me gusta en Linux, así que he estado compilando y construyendo a través de mi lappie de Windows y AVRstudio. (¡Por eso me encanta Arduino, buen IDE y funciona de inmediato!)

Entonces, ¿alguien tiene alguna experiencia de primera mano usando un IDE con Linux que haya desarrollado con éxito sus proyectos AVR de principio a fin?

BrianMcK
fuente

Respuestas:

8

Lo que pasa con los desarrolladores basados ​​en Linux es que generalmente tienen su propio flujo de trabajo único (vim vs emacs, etc.). En mi opinión, Linux es un gran IDE al que agregas tus propias partes. Con eso en mente:

Si está utilizando una distribución basada en Debian, ejecute esto en su línea de comando: sudo apt-get install build-essential avr-gcc avrdude

Luego encuentre un editor de texto que le guste (google es su amigo, pero aquí hay algunos: vim / gvim, emacs, geany, kate, jedit) y escriba algo de C. Cuando esté listo para compilar, salte a avrfreaks y eche un vistazo a otros pueblos hacen archivos . Probablemente pueda robar un archivo MAKE del proyecto de otra persona y modificar el dispositivo de destino, la frecuencia XTAL y los nombres de los archivos de origen. Después de ejecutar make y tener un archivo .hex, use avrdude para programar su chip.

Para entrar en detalles tomaría mucho más espacio que el que tengo, pero ese es el proceso básico. Cuando se sienta cómodo con el proceso, puede hacer cosas geniales adicionales en el archivo MAKE, como tener un solo comando que compila y descarga su código. Algunos editores de texto (como geany) le permiten configurar comandos personalizados para las opciones del menú de la GUI para que pueda tener un botón de compilación + descarga como lo hago yo.

Además, lo fantástico de este proceso es que es más o menos lo mismo si está construyendo para ARM, AVR, x86, SPARC, lo que sea. Una vez que tenga makefiles y gcc down, ¡el resto del desarrollo de Linux es pan comido!

Jeremy
fuente
HEHE, muy simple. Estaba innecesariamente intimidado por este enfoque. Hasta que se explicó tan simplemente, no sabía cómo construir el archivo MAKE. Gracias por la dirección :)
BrianMcK
Esto es lo que yo hago también. EMACS y un Makefile. También puedes compilar cosas de Arduino de esta manera. (* jcl *)
jluciani
También puede usar Eclipse como IDE / editor y usar el archivo MAKE para compilar y descargar. Con OpenOCD y ARM, incluso es posible depurar a través de JTAG (no sé si esto funciona con AVR).
starblue
3

Hay un módulo Eclipse para el AVR, pero lo usé y parecía ser mucho más problemático de lo que valía la pena. (Como la mayoría de los otros módulos de Eclipse que he usado)

usuario449
fuente
Aplausos por el liderato, pero como no
pareces
Solo me gustaría agregar que tengo que usar eclipse en el trabajo (aunque no para avrs) y no lo recomiendo. Para los microcontroladores puedes prescindir de toda esa hinchazón.
jeremy
2

No tengo experiencia de primera mano con él, pero KontrollerLab suena interesante.

Clinton Blackmore
fuente
Sí, he tratado de hacer que KontrollerLab funcione antes, pero mi PC se ha bloqueado recientemente y solo he estado configurando todo de nuevo. Parece ser del mismo equipo que hizo Ktechlab, que me pareció muy útil para el diseño esquemático y de circuitos. Gracias por el aporte.
BrianMcK
2

Como el enfoque del archivo MAKE parece tratar con el lado C de mi pregunta, experimenté un poco más aquí (tal como era) y descubrí que también tenía los recursos para construir el código de ensamblaje.

Utilizando AVRA , un ensamblador de línea de comandos, probé la construcción de un proyecto mío de la vieja escuela y obtuve un archivo * .hex idéntico comparándolo con mi salida AVRstudio original. Si bien no he programado el micro AVR, solo en función de la salida, me complace decir que ahora tengo xp de primera mano, aunque limitado :)

BrianMcK
fuente
No olvide que avr-gcc también incluye un ensamblador perfectamente bueno. Tiene una sintaxis ligeramente diferente al ensamblador de AVRA y Atmel, pero funciona igual de bien.
Tim
0

ECLIPSE funciona bien en un EeePC con el parche AVR ... Pero es un poco lento.


fuente