Blame view

PercTeacher/Sources/Robot/makefile 891 Bytes
7d329109   pifou   PercTeacher progr...
1
2
3
4
5
6
7
8
  export CC = avr-gcc
  
  export MCU = atmega2560
  export TARGET_ARCH = -mmcu=$(MCU)
  
  export CFLAGS =  -Wall -I. -DF_CPU=16000000 -Os #-g
  export LDFLAGS = -g $(TARGET_ARCH) -lm -Wl,--gc-sections #	-Os
  
b08b30f4   pfrison   Correction PercTe...
9
  TARGET = robot.c
7d329109   pifou   PercTeacher progr...
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
  TERM = /dev/ttyACM0
  CPPFLAGS = -mmcu=$(MCU)
  PGMERISP = -c wiring -b 115200 -P $(TERM) -D
  export DUDE = /usr/bin/avrdude -F -v -p $(MCU)
  
  C_SRC = $(wildcard *.c)
  OBJS = $(C_SRC:.c=.o)
  
  all: $(TARGET).hex
  
  clean:
  	rm -f *.o *.hex *.elf
  
  %.o:%.c
  	$(CC) -c $(CPPFLAGS) $(CFLAGS) $< -o $@
  
  $(TARGET).elf: $(OBJS)
  	$(CC) $(LDFLAGS) -o $@ $(OBJS)
  
  $(TARGET).hex: $(TARGET).elf
  	avr-objcopy -j .text -j .data -O ihex $(TARGET).elf $(TARGET).hex
  	avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O ihex $(TARGET).elf eeprom.hex
  
  upload: $(TARGET).hex
  	stty -F $(TERM) hupcl # reset
  	$(DUDE) $(PGMERISP) -U flash:w:$(TARGET).hex
  	make clean