32 lines
573 B
Plaintext
32 lines
573 B
Plaintext
|
CFLAGS = -Os -Wall --std=c11 -g
|
||
|
CHIP = atmega328p
|
||
|
SOURCE_FILES = ${wildcard *.c}
|
||
|
OBJ_FILES = $(SOURCE_FILES:%.c=%.o)
|
||
|
BIN = pendulum.bin
|
||
|
HEX = pendulum.hex
|
||
|
ASM = pendulum.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)
|
||
|
|
||
|
|