blob: 6b8f6b4690c627cc7312911356ea014226a3e095 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# adjust according to your needs
AS = avr-as
LD = avr-ld
OBJ = avr-obj
MCU ?= atmega328p
MCUPATH ?= /dev/ttyACM0
DUDE ?= avrdude
PROGRAMMER ?= arduino
LDFLAGS += -m avr5
DUDEFLAGS += -c $(PROGRAMMER) -p $(MCU) -P $(MCUPATH)
# timer.s file
TARGET ?= timer
.PHONY: flash dump-timer clean all
all: $(TARGET).hex
flash: $(TARGET).hex
test $(shell id -u) = 0
$(DUDE) $(DUDEFLAGS) -U flash:w:$<
%.hex: %
$(OBJ)copy -O ihex $< $@
%: %.o
$(LD) $(LDFLAGS) -o $@ $<
%.o: %.s
$(AS) -mmcu=$(MCU) -o $@ $<
dump-%: %
$(OBJ)dump -d timer
clean:
rm *.o *.hex *.elf *.bin timer
|