45 lines
987 B
Makefile
45 lines
987 B
Makefile
NAME=blinky
|
|
|
|
PREFIX?=arm-none-eabi-
|
|
CC=$(PREFIX)gcc
|
|
AS=$(PREFIX)as
|
|
OBJCOPY=$(PREFIX)objcopy
|
|
|
|
VPATH=src
|
|
|
|
.SECONDARY:
|
|
|
|
clean:
|
|
rm -f lib/libopencm3/lib/libopencm3_stm32f4.a
|
|
rm -f $(NAME).bin
|
|
rm -f $(NAME).elf
|
|
rm -f $(NAME).o
|
|
|
|
clobber:
|
|
rm -f lib/libopencm3/lib/libopencm3_stm32f4.a
|
|
rm -f $(NAME).bin
|
|
$(MAKE) -C lib/libopencm3 clean
|
|
|
|
libopencm3:
|
|
$(MAKE) -C lib/libopencm3 TARGETS=stm32/f4
|
|
|
|
flash: $(NAME).bin
|
|
st-flash write $(NAME).bin 0x8000000
|
|
|
|
all: libopencm3 $(NAME).bin
|
|
|
|
%.o: %.c
|
|
$(CC) -Og -g -Wall -std=c99 -mthumb -mcpu=cortex-m4 -mfloat-abi=hard -Ilib/libopencm3/include -DSTM32F4 -c $< -o $@
|
|
|
|
%.elf: %.o
|
|
$(CC) --static -nostartfiles -Tnucleo-f411re.ld -mthumb -mcpu=cortex-m4 -mfloat-abi=hard -Llib/libopencm3/lib $< -lopencm3_stm32f4 -o $@
|
|
|
|
%.bin: %.elf
|
|
$(OBJCOPY) $< -O binary $@
|
|
|
|
gdb:
|
|
arm-none-eabi-gdb -ex 'target extended-remote :3333' $(NAME).elf
|
|
|
|
oocd:
|
|
openocd -f /usr/share/openocd/scripts/interface/stlink.cfg -f /usr/share/openocd/scripts/target/stm32f4x.cfg
|