mirror of
https://github.com/eddyem/scorpio.git
synced 2026-03-21 09:11:02 +03:00
Temporary system with STM8
This commit is contained in:
77
avr/Makefile
Normal file
77
avr/Makefile
Normal file
@@ -0,0 +1,77 @@
|
||||
### https://habrahabr.ru/post/247663/
|
||||
|
||||
NAME = scorpio
|
||||
|
||||
OBJCOPY = avr-objcopy
|
||||
OBJDUMP = avr-objdump
|
||||
CC = avr-gcc
|
||||
OPTIMIZE= -Os
|
||||
DEFS = -DBAUD=9600
|
||||
DEFS += -DEBUG
|
||||
LIBS =
|
||||
|
||||
# controller
|
||||
DEVICE = atmega8535
|
||||
#Тактовая частота 8 МГц
|
||||
CLOCK = 8000000
|
||||
# partno (for avrdude)
|
||||
PARTNO = m8535
|
||||
|
||||
CFLAGS = -g -Wall $(OPTIMIZE) $(DEFS)
|
||||
LDFLAGS = -Wl,-Map,$(NAME).map
|
||||
|
||||
# programmer (for avrdude)
|
||||
PROGRAMMER = avrisp
|
||||
|
||||
# serial port device (for avrdude)
|
||||
SERPORT = /dev/ttyUSB0
|
||||
|
||||
SRC=$(wildcard *.c)
|
||||
HEX = $(NAME).hex
|
||||
ELF = $(NAME).elf
|
||||
OBJECTS = $(SRC:%.c=%.o)
|
||||
|
||||
# avrdude command from arduino IDE
|
||||
AVRDUDE = avrdude -C/usr/share/arduino/hardware/tools/avrdude.conf -v -p$(PARTNO) -c$(PROGRAMMER) -P$(SERPORT) -b19200 -D
|
||||
|
||||
COMPILE = $(CC) $(CFLAGS) -mmcu=$(DEVICE) -DF_CPU=$(CLOCK)
|
||||
|
||||
all: $(HEX) lst
|
||||
|
||||
$(ELF): $(OBJECTS)
|
||||
@echo "ELF"
|
||||
@$(COMPILE) $(LDFLAGS) -o $(ELF) $(OBJECTS) $(LIBS)
|
||||
|
||||
$(HEX): $(ELF)
|
||||
@echo "HEX"
|
||||
@rm -f $(HEX)
|
||||
@$(OBJCOPY) -j .text -j .data -O ihex $(ELF) $(HEX)
|
||||
@avr-size $(ELF)
|
||||
|
||||
.c.o:
|
||||
@$(COMPILE) -c $< -o $@
|
||||
|
||||
.S.o:
|
||||
@$(COMPILE) -x assembler-with-cpp -c $< -o $@
|
||||
|
||||
.c.s:
|
||||
@$(COMPILE) -S $< -o $@
|
||||
|
||||
lst: $(NAME).lst
|
||||
|
||||
%.lst: %.elf
|
||||
@echo "Make listing"
|
||||
@$(OBJDUMP) -h -S $< > $@
|
||||
|
||||
flash: all
|
||||
@echo "Flash"
|
||||
$(AVRDUDE) -U flash:w:$(HEX):i
|
||||
|
||||
clean:
|
||||
@echo "Clean"
|
||||
@rm -f $(HEX) $(ELF) $(OBJECTS) *.lst *.map
|
||||
|
||||
gentags:
|
||||
CFLAGS="$(CFLAGS) -I/usr/avr/include" geany -g $(NAME).c.tags *.[hc] 2>/dev/null
|
||||
|
||||
.PHONY: gentags clean
|
||||
Reference in New Issue
Block a user