55 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| CFLAGS += \
 | |
|   -flto \
 | |
|   -mthumb \
 | |
|   -mabi=aapcs \
 | |
|   -mcpu=cortex-m4 \
 | |
|   -mfloat-abi=hard \
 | |
|   -mfpu=fpv4-sp-d16 \
 | |
|   -nostdlib -nostartfiles \
 | |
|   -DSTM32F405xx \
 | |
|   -DCFG_TUSB_MCU=OPT_MCU_STM32F4
 | |
| 
 | |
| # suppress warning caused by vendor mcu driver
 | |
| CFLAGS += -Wno-error=cast-align
 | |
| 
 | |
| ST_FAMILY = f4
 | |
| ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
 | |
| ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
 | |
| 
 | |
| # All source paths should be relative to the top level.
 | |
| LD_FILE = hw/bsp/$(BOARD)/STM32F405RGTx_FLASH.ld
 | |
| 
 | |
| SRC_C += \
 | |
| 	$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
 | |
| 	$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
 | |
| 	$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
 | |
| 	$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_rcc.c \
 | |
| 	$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_gpio.c \
 | |
| 	$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_uart.c
 | |
| 
 | |
| SRC_S += \
 | |
| 	$(ST_CMSIS)/Source/Templates/gcc/startup_stm32f405xx.s
 | |
| 
 | |
| INC += \
 | |
| 	$(TOP)/lib/CMSIS_5/CMSIS/Core/Include \
 | |
| 	$(TOP)/$(ST_CMSIS)/Include \
 | |
| 	$(TOP)/$(ST_HAL_DRIVER)/Inc \
 | |
| 	$(TOP)/hw/bsp/$(BOARD)
 | |
| 
 | |
| # For TinyUSB port source
 | |
| VENDOR = st
 | |
| CHIP_FAMILY = synopsys
 | |
| 
 | |
| # For freeRTOS port source
 | |
| FREERTOS_PORT = ARM_CM4F
 | |
| 
 | |
| # For flash-jlink target
 | |
| JLINK_DEVICE = stm32f405rg
 | |
| 
 | |
| # Path to STM32 Cube Programmer CLI, should be added into system path
 | |
| STM32Prog = STM32_Programmer_CLI
 | |
| 
 | |
| # flash target ROM bootloader
 | |
| flash: $(BUILD)/$(BOARD)-firmware.bin
 | |
| 	dfu-util -R -a 0 --dfuse-address 0x08000000 -D $<
 | 
