Ähm ... ich programmiere die AVRs immer unter Linux ....
Ich installiere avr-gcc, make, meinen Editor (vim oder geany) und zum schubsen des Programmes auf den AVR den avrdude.
Das wars ...
Code:
cat ../usbstepper/firmware/Makefile
CC=avr-g++
RM=rm -f
OBJCOPY=avr-objcopy
AVRDUDE=sudo avrdude -p m168 -c avrispmkii -P USB
AVRSIZE=avr-size
OBJDUMP=avr-objdump
MCU=atmega168p
F_CPU=16000000
CFLAGS=-g -DF_CPU=$(F_CPU) -Wall -Os --std=c++11 -mcall-prologues
OBJ = main.o rs232.o parser.o timer1.o io.o
BIN = usbstepper.bin
HEX = usbstepper.hex
MAP = usbstepper.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) -e -U flash:w:$(HEX)
readfuse:
$(AVRDUDE) lfuse:r:-:i -v
writefuse:
$(AVRDUDE) -U lfuse:w:0xde:m -U hfuse:w:0xdf:m -U efuse:w:0x01:m
size: $(BIN)
$(AVRSIZE) -B $(BIN)
dump:
$(OBJDUMP) -d --demangle $(BIN)
Lesezeichen