Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
126 changes: 1 addition & 125 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -50,130 +50,6 @@ ADIRS := User
AFILES :=

# Include paths
INCLUDES := Libraries/CMSIS/Core/Include \
Libraries/CMSIS/Device/PY32F0xx/Include \
$(CDIRS)

##### Library Paths ############

# Library flags
LIB_FLAGS = $(MCU_TYPE)
# JLink device (Uppercases)
JLINK_DEVICE ?= $(shell echo $(MCU_TYPE) | tr '[:lower:]' '[:upper:]')
# PyOCD device (Lowercases)
PYOCD_DEVICE ?= $(shell echo $(MCU_TYPE) | tr '[:upper:]' '[:lower:]')
# Link descript file:
LDSCRIPT = Libraries/LDScripts/$(PYOCD_DEVICE).ld


ifneq (,$(findstring PY32F002B,$(MCU_TYPE)))

# PY32F002B >>>
CFILES += Libraries/CMSIS/Device/PY32F0xx/Source/system_py32f002b.c

ifeq ($(USE_LL_LIB),y)
CDIRS += Libraries/PY32F002B_LL_Driver/Src \
Libraries/PY32F002B_LL_BSP/Src
INCLUDES += Libraries/PY32F002B_LL_Driver/Inc \
Libraries/PY32F002B_LL_BSP/Inc
LIB_FLAGS += USE_FULL_LL_DRIVER
else
CDIRS += Libraries/PY32F002B_HAL_Driver/Src \
Libraries/PY32F002B_HAL_BSP/Src
INCLUDES += Libraries/PY32F002B_HAL_Driver/Inc \
Libraries/PY32F002B_HAL_BSP/Inc
endif
# Startup file
AFILES := Libraries/CMSIS/Device/PY32F0xx/Source/gcc/startup_py32f002b.s
# PY32F002B <<<

else ifneq (,$(findstring PY32F07,$(MCU_TYPE)))

# PY32F07x >>>
CFILES += Libraries/CMSIS/Device/PY32F0xx/Source/system_py32f07x.c

CDIRS += Libraries/PY32F07x_HAL_Driver/Src \
Libraries/PY32F07x_HAL_BSP/Src
INCLUDES += Libraries/PY32F07x_HAL_Driver/Inc \
Libraries/PY32F07x_HAL_BSP/Inc
LIB_FLAGS += USE_HAL_DRIVER
# Startup file
AFILES := Libraries/CMSIS/Device/PY32F0xx/Source/gcc/startup_py32f072.s
# PY32F07 <<<

else

# PY32F002A,003,030 >>>
CFILES += Libraries/CMSIS/Device/PY32F0xx/Source/system_py32f0xx.c

ifeq ($(USE_LL_LIB),y)
CDIRS += Libraries/PY32F0xx_LL_Driver/Src \
Libraries/PY32F0xx_LL_BSP/Src
INCLUDES += Libraries/PY32F0xx_LL_Driver/Inc \
Libraries/PY32F0xx_LL_BSP/Inc
LIB_FLAGS += USE_FULL_LL_DRIVER
else
CDIRS += Libraries/PY32F0xx_HAL_Driver/Src \
Libraries/PY32F0xx_HAL_BSP/Src
INCLUDES += Libraries/PY32F0xx_HAL_Driver/Inc \
Libraries/PY32F0xx_HAL_BSP/Inc
endif
# Startup file
ifneq (,$(findstring PY32F002A,$(LIB_FLAGS)))
AFILES := Libraries/CMSIS/Device/PY32F0xx/Source/gcc/startup_py32f002a.s
endif
ifneq (,$(findstring PY32F003,$(LIB_FLAGS)))
AFILES := Libraries/CMSIS/Device/PY32F0xx/Source/gcc/startup_py32f003.s
endif
ifneq (,$(findstring PY32F030,$(LIB_FLAGS)))
AFILES := Libraries/CMSIS/Device/PY32F0xx/Source/gcc/startup_py32f030.s
endif
# PY32F002A,003,030 <<<

endif

######## Additional Libs ########

ifeq ($(USE_FREERTOS),y)
CDIRS += Libraries/FreeRTOS \
Libraries/FreeRTOS/portable/GCC/ARM_CM0

CFILES += Libraries/FreeRTOS/portable/MemMang/heap_4.c

INCLUDES += Libraries/FreeRTOS/include \
Libraries/FreeRTOS/portable/GCC/ARM_CM0
endif

ifeq ($(USE_DSP),y)
CFILES += Libraries/CMSIS/DSP/Source/BasicMathFunctions/BasicMathFunctions.c \
Libraries/CMSIS/DSP/Source/BayesFunctions/BayesFunctions.c \
Libraries/CMSIS/DSP/Source/CommonTables/CommonTables.c \
Libraries/CMSIS/DSP/Source/ComplexMathFunctions/ComplexMathFunctions.c \
Libraries/CMSIS/DSP/Source/ControllerFunctions/ControllerFunctions.c \
Libraries/CMSIS/DSP/Source/DistanceFunctions/DistanceFunctions.c \
Libraries/CMSIS/DSP/Source/FastMathFunctions/FastMathFunctions.c \
Libraries/CMSIS/DSP/Source/FilteringFunctions/FilteringFunctions.c \
Libraries/CMSIS/DSP/Source/InterpolationFunctions/InterpolationFunctions.c \
Libraries/CMSIS/DSP/Source/MatrixFunctions/MatrixFunctions.c \
Libraries/CMSIS/DSP/Source/QuaternionMathFunctions/QuaternionMathFunctions.c \
Libraries/CMSIS/DSP/Source/StatisticsFunctions/StatisticsFunctions.c \
Libraries/CMSIS/DSP/Source/SupportFunctions/SupportFunctions.c \
Libraries/CMSIS/DSP/Source/SVMFunctions/SVMFunctions.c \
Libraries/CMSIS/DSP/Source/TransformFunctions/TransformFunctions.c
INCLUDES += Libraries/CMSIS/DSP/Include \
Libraries/CMSIS/DSP/PrivateInclude
endif

ifeq ($(USE_EPAPER),y)
CDIRS += Libraries/EPaper/Lib \
Libraries/EPaper/Examples \
Libraries/EPaper/Fonts \
Libraries/EPaper/GUI

INCLUDES += Libraries/EPaper/Lib \
Libraries/EPaper/Examples \
Libraries/EPaper/Fonts \
Libraries/EPaper/GUI
endif
INCLUDES := $(CDIRS)

include ./rules.mk
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,15 @@ Frequency up to 72 MHz, 128 Kbytes of Flash memory, 16 Kbytes of SRAM, with more
└── User # User application code
```

## Use as a submodule

If you prefer you may include this template as a submodule into your repository.
```
git submodule add https://github.com/IOsetting/py32f0-template
sed 's/include \./include py32f0-template/' py32f0-template/Makefile > Makefile
```
Then adjust the `Makefile` to your needs.

# Requirements

* PY32F0 EVB or boards of PY32F002/003/030 series
Expand Down
Loading