2017-05-22 15:08:04 +02:00
|
|
|
#
|
|
|
|
# Rules to (help) build the F30x device support.
|
|
|
|
#
|
|
|
|
|
|
|
|
# Directory containing this makefile
|
|
|
|
PIOS_DEVLIB := $(dir $(lastword $(MAKEFILE_LIST)))
|
|
|
|
|
|
|
|
USE_USB ?= YES
|
|
|
|
|
2017-05-22 16:38:22 +02:00
|
|
|
LDSRC = $(PIOS_DEVLIB)link_memory.lds $(PIOS_DEVLIB)link_sections.lds
|
2017-05-22 15:08:04 +02:00
|
|
|
|
|
|
|
CDEFS += -D$(CHIP) -DSTM32F3
|
|
|
|
CDEFS += -DHSE_VALUE=$(OSCILLATOR_FREQ)
|
|
|
|
CDEFS += -DUSE_STDPERIPH_DRIVER
|
|
|
|
CDEFS += -DARM_MATH_CM4 -D__FPU_PRESENT=1
|
|
|
|
CDEFS += -DPIOS_TARGET_PROVIDES_FAST_HEAP
|
|
|
|
|
|
|
|
ARCHFLAGS += -mcpu=cortex-m4 -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
|
|
|
|
|
|
|
|
# PIOS device library source and includes
|
|
|
|
PIOS_DEVLIB_SRC = $(sort $(wildcard $(PIOS_DEVLIB)*.c))
|
|
|
|
|
|
|
|
ifeq ($(PIOS_OMITS_USB),YES)
|
|
|
|
SRC += $(filter-out $(wildcard $(PIOS_DEVLIB)pios_usb*.c), $(PIOS_DEVLIB_SRC))
|
|
|
|
else
|
|
|
|
SRC += $(PIOS_DEVLIB_SRC)
|
|
|
|
endif
|
|
|
|
|
|
|
|
EXTRAINCDIRS += $(PIOS_DEVLIB)inc
|
|
|
|
|
|
|
|
# CMSIS for the F3
|
|
|
|
include $(PIOSCOMMON)/libraries/CMSIS/library.mk
|
|
|
|
CMSIS_DEVICEDIR := $(PIOS_DEVLIB)libraries/CMSIS3/Device/ST/STM32F30x
|
|
|
|
EXTRAINCDIRS += $(CMSIS_DEVICEDIR)/Include
|
|
|
|
|
|
|
|
# ST Peripheral library
|
|
|
|
PERIPHLIB = $(PIOS_DEVLIB)libraries/STM32F30x_StdPeriph_Driver
|
|
|
|
ALL_SPL_SOURCES = $(sort $(wildcard $(PERIPHLIB)/src/*.c))
|
|
|
|
SPL_SOURCES = $(filter-out %stm32f30x_can.c, $(ALL_SPL_SOURCES))
|
|
|
|
SRC += $(SPL_SOURCES)
|
|
|
|
EXTRAINCDIRS += $(PERIPHLIB)/inc
|
|
|
|
|
|
|
|
ifneq ($(PIOS_OMITS_USB),YES)
|
|
|
|
# ST USB Device library
|
|
|
|
USBDEVLIB = $(PIOS_DEVLIB)/libraries/STM32_USB-FS-Device_Driver
|
|
|
|
SRC += $(sort $(wildcard $(USBDEVLIB)/src/*.c))
|
|
|
|
EXTRAINCDIRS += $(USBDEVLIB)/inc
|
|
|
|
endif
|
|
|
|
|
|
|
|
#
|
|
|
|
# FreeRTOS
|
|
|
|
#
|
|
|
|
# If the application has included the generic FreeRTOS support, then add in
|
|
|
|
# the device-specific pieces of the code.
|
|
|
|
#
|
|
|
|
ifneq ($(FREERTOS_DIR),)
|
|
|
|
FREERTOS_PORTDIR := $(FREERTOS_DIR)
|
|
|
|
SRC += $(sort $(wildcard $(FREERTOS_PORTDIR)/portable/GCC/ARM_CM4F/*.c))
|
|
|
|
EXTRAINCDIRS += $(FREERTOS_PORTDIR)/portable/GCC/ARM_CM4F
|
|
|
|
include $(PIOSCOMMON)/libraries/msheap/library.mk
|
|
|
|
endif
|