Documentación sobre `avr-as`

Estoy empezando a aprender microcontroladores AVR. Pero mi sistema operativo es Linux. he instalado avr-binutilscon avr-as. Pero no puedo encontrar documentación al respecto; especialmente, la sintaxis avr (por ejemplo, para x86 standrd intel y como la sintaxis difiere).

Respuestas (4)

La documentación, tal como es, está en http://www.nongnu.org/avr-libc/

La sintaxis básica de AVR es prácticamente la misma que encontrará en las hojas de datos de Atmel (a diferencia de la forma en que GCC usa una sintaxis de ensamblador x86 diferente a la de otros compiladores x86). También puede usar avr-gcc -S file.cpara ver el ensamblaje gccgenerado para un archivo.

Una pregunta un poco fuera de tema: ¿son avr-gcccompatibles avr-ascon C y el compilador Assembler de AVR Studio?
Y gracias. Encontré documentación en nongnu.org/avr-libc/user-manual/index.html

¿ Qué tal usar Atmel Studio dentro de una máquina virtualbox ? Ambos son gratis. También necesita una licencia de Windows (XP/Vista/7) y un disco de instalación, pero tal vez pueda obtener uno fácilmente.

El desarrollo de AVR en Linux con eclipse-avr puede ser bastante decente.
también hay avra.sourceforge.net que es lo que uso.

Los comandos del ensamblador avr son siempre los mismos: conjunto de instrucciones AVR . Aquí hay un flujo de trabajo simple.

  1. Escribe tu programa en un archivo nombre de archivo.
  2. avr-como nombre de archivo program.out
  3. avr-objcopy -j .text -j .data -O ihex programa.out programa.hex

El archivo hexadecimal contiene los códigos ópticos de las instrucciones compiladas (es un archivo de texto, puede abrirlo y verlo). Es para ser subido a la avr.

  1. avrdude -p partname -c programador programa.hex

No estoy seguro, es posible que deba agregar -mmcu=partname a la línea de comando del ensamblador. Experimento.

Por cierto, felicidades por empezar con el ensamblador. Más adelante pasarás a programar en C, pero la experiencia será valiosa para ti.

Otra nota: echa un vistazo a este makefile AVR . Puede usarlo por ahora, compilando C y proyectos de ensamblaje por igual.

Otra nota más: no revisé la cuarta (4) instrucción que te di, aquí no tengo un programador. Podría... estar mal :D

¡Buena suerte y diviertete!

Estoy usando dos ensambladores AVR simples en mi Ubuntu. Están actualizados y son de código abierto y funcionan bien.

gavrasm http://www.avr-asm-tutorial.net/gavrasm/index_en.html

avra http://avra.sourceforge.net/