Workflow mit avr-gcc
Voraussetzung (Linux-Pakete): gcc-avr binutils-avr avr-libc avrdude
-
Compilieren:
avr-gcc -Os -DF_CPU=16000000UL -mmcu=atmega328p -c -o blink_led.o blink_led.c
-
Linken:
avr-gcc -mmcu=atmega328p blink_led.o -o blink_led.elf
-
Anzeige von Informationen des Objektfiles:
avr-objdump -h -S blink_led.elf > blink_led.lst
-
Generierung des Map-Files
avr-gcc -mmcu=atmega328p -Wl,-Map,blink_led.map blink_led.o -o blink_led.elf
-
Konvertierung in ein HEX-File:
avr-objcopy -O ihex -R .eeprom blink_led blink_led.hex
-
Upload und Flash:
avrdude -v -c arduino -p ATMEGA328P -P /dev/ttyACM0 -b 115200 -U flash:w:blink_led.hex
Letzte Änderung: 09. March 2023 14:53