32 lines
579 B
Makefile
32 lines
579 B
Makefile
CFLAGS = -Os -Wall --std=c11 -g
|
|
CHIP = atmega328p
|
|
SOURCE_FILES = $(wildcard *.c)
|
|
OBJ_FILES = $(SOURCE_FILES:%.c=%.o)
|
|
BIN = led-driver.bin
|
|
HEX = led-driver.hex
|
|
ASM = led-driver.asm
|
|
|
|
default: $(HEX)
|
|
|
|
%.o: %.c
|
|
avr-gcc $(CFLAGS) -mmcu=$(CHIP) -o $@ $<
|
|
|
|
$(BIN): $(OBJ_FILES)
|
|
avr-gcc $(CFLAGS) -o $@ $^
|
|
|
|
$(ASM): $(BIN)
|
|
avr-objdump -d -g -l -S $^ > $@
|
|
|
|
$(HEX): $(BIN)
|
|
avr-objcopy -O ihex -j .text -j .data $^ $@
|
|
|
|
asm: $(ASM)
|
|
|
|
flash: $(HEX)
|
|
avrdude -p $(CHIP) -c arduino -B 115200 -P /dev/ttyACM0 -v -v -e -Uflash:w:$(HEX):a
|
|
|
|
clean:
|
|
$(RM) $(OBJ_FILES) $(BIN) $(HEX) $(ASM)
|
|
|
|
|