Ich nutze avrdude mit makefile. Hier habe ich ein Target namens flash. Ich mach einfach ein "make flash" und alles wird übersetzt und anschliessend in den Atmega mittels avrdude reingepumpt ![Zwinkern](https://www.roboternetz.de/phpBB2/images/smiles/icon_wink.gif)
Code:
CC=avr-gcc-4.5.3
RM=rm -f
OBJCOPY=avr-objcopy
AVRDUDE=sudo avrdude -p m168 -c avrispmkii -P USB -e -U flash:w:
AVRSIZE=avr-size
MCU=atmega168
F_CPU=16000000
CFLAGS=-g -DF_CPU=$(F_CPU) -Wall -Os -mcall-prologues
OBJ = main.o uart.o twimaster.o
BIN = fgcontrol.bin
HEX = fgcontrol.hex
MAP = fgcontrol.map
.phony: all
all: $(OBJ)
$(RM) $(HEX) $(BIN) $(MAP)
$(CC) -mmcu=$(MCU) $(CFLAGS) -o $(BIN) -Wl,-Map,$(MAP) $(OBJ)
$(OBJCOPY) -R .eeprom -O ihex $(BIN) $(HEX)
%.o: %.cpp
$(CC) -mmcu=$(MCU) $(CFLAGS) -c $<
clean:
$(RM) $(OBJ) $(BIN) $(HEX) $(MAP)
flash: $(OBJ)
$(AVRDUDE)$(HEX)
size: $(BIN)
$(AVRSIZE) -C --mcu=$(MCU) $(BIN)
Hoffe dass dir das hilft ![Smile](https://www.roboternetz.de/phpBB2/images/smiles/icon_smile.gif)
Gruß
Georg
Lesezeichen