Commit 10755269 by Enrico Pozzobon

Enabled prefetch and cpu cache on STM32F7

parent 774b2054
[PreviousGenFiles] [PreviousGenFiles]
HeaderPath=/home/enrico/Projects/lwc-compare/templates/f7/Inc HeaderPath=/home/enrico/Projects/lw-crypto-compare/templates/f7/Inc
HeaderFiles=stm32f7xx_it.h;stm32f7xx_hal_conf.h;main.h;stm32_assert.h; HeaderFiles=stm32f7xx_it.h;stm32f7xx_hal_conf.h;main.h;stm32_assert.h;
SourcePath=/home/enrico/Projects/lwc-compare/templates/f7/Src SourcePath=/home/enrico/Projects/lw-crypto-compare/templates/f7/Src
SourceFiles=stm32f7xx_it.c;stm32f7xx_hal_msp.c;main.c; SourceFiles=stm32f7xx_it.c;stm32f7xx_hal_msp.c;main.c;
[PreviousLibFiles] [PreviousLibFiles]
LibFiles=Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_gpio.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_cortex.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_system.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_utils.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_exti.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_pwr.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dmamux.h;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_gpio.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_cortex.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_system.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_utils.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_exti.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_pwr.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dmamux.h;Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f746xx.h;Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h;Drivers/CMSIS/Device/ST/STM32F7xx/Include/system_stm32f7xx.h;Drivers/CMSIS/Device/ST/STM32F7xx/Source/Templates/system_stm32f7xx.c;Drivers/CMSIS/Include/tz_context.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/cmsis_compiler.h;Drivers/CMSIS/Include/core_cm23.h;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/mpu_armv8.h;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/core_armv8mbl.h;Drivers/CMSIS/Include/core_armv8mml.h;Drivers/CMSIS/Include/cmsis_armclang.h;Drivers/CMSIS/Include/cmsis_version.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/cmsis_iccarm.h;Drivers/CMSIS/Include/core_cm33.h;Drivers/CMSIS/Include/core_cm1.h;Drivers/CMSIS/Include/mpu_armv7.h; LibFiles=Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_gpio.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_cortex.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_system.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_utils.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_exti.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_pwr.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dmamux.h;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_gpio.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_cortex.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_system.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_utils.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_exti.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_pwr.h;Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dmamux.h;Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f746xx.h;Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h;Drivers/CMSIS/Device/ST/STM32F7xx/Include/system_stm32f7xx.h;Drivers/CMSIS/Device/ST/STM32F7xx/Source/Templates/system_stm32f7xx.c;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/core_cm23.h;Drivers/CMSIS/Include/mpu_armv7.h;Drivers/CMSIS/Include/cmsis_version.h;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/tz_context.h;Drivers/CMSIS/Include/cmsis_armclang.h;Drivers/CMSIS/Include/core_armv8mbl.h;Drivers/CMSIS/Include/mpu_armv8.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/core_cm1.h;Drivers/CMSIS/Include/cmsis_iccarm.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/cmsis_compiler.h;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/core_cm33.h;Drivers/CMSIS/Include/core_armv8mml.h;
[PreviousUsedMakefileFiles] [PreviousUsedMakefileFiles]
SourceFiles=Src/main.c;Src/stm32f7xx_it.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c;Src/system_stm32f7xx.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c;Src/system_stm32f7xx.c;Drivers/CMSIS/Device/ST/STM32F7xx/Source/Templates/system_stm32f7xx.c;; SourceFiles=Src/main.c;Src/stm32f7xx_it.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c;Src/system_stm32f7xx.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c;Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c;Src/system_stm32f7xx.c;Drivers/CMSIS/Device/ST/STM32F7xx/Source/Templates/system_stm32f7xx.c;;
HeaderPath=Drivers/STM32F7xx_HAL_Driver/Inc;Drivers/CMSIS/Device/ST/STM32F7xx/Include;Drivers/CMSIS/Include;Inc; HeaderPath=Drivers/STM32F7xx_HAL_Driver/Inc;Drivers/CMSIS/Device/ST/STM32F7xx/Include;Drivers/CMSIS/Include;Inc;
CDefines=USE_FULL_LL_DRIVER;HSE_VALUE:8000000;HSE_STARTUP_TIMEOUT:100;LSE_STARTUP_TIMEOUT:5000;LSE_VALUE:32768;EXTERNAL_CLOCK_VALUE:12288000;HSI_VALUE:16000000;LSI_VALUE:32000;VDD_VALUE:3300;PREFETCH_ENABLE:0;ART_ACCLERATOR_ENABLE:0;STM32F746xx;HSE_VALUE:8000000;HSE_STARTUP_TIMEOUT:100;LSE_STARTUP_TIMEOUT:5000;LSE_VALUE:32768;EXTERNAL_CLOCK_VALUE:12288000;HSI_VALUE:16000000;LSI_VALUE:32000;VDD_VALUE:3300; CDefines=USE_FULL_LL_DRIVER;HSE_VALUE:8000000;HSE_STARTUP_TIMEOUT:100;LSE_STARTUP_TIMEOUT:5000;LSE_VALUE:32768;EXTERNAL_CLOCK_VALUE:12288000;HSI_VALUE:16000000;LSI_VALUE:32000;VDD_VALUE:3300;PREFETCH_ENABLE:1;ART_ACCLERATOR_ENABLE:1;STM32F746xx;HSE_VALUE:8000000;HSE_STARTUP_TIMEOUT:100;LSE_STARTUP_TIMEOUT:5000;LSE_VALUE:32768;EXTERNAL_CLOCK_VALUE:12288000;HSI_VALUE:16000000;LSI_VALUE:32000;VDD_VALUE:3300;
########################################################################################################################## ##########################################################################################################################
# File automatically-generated by tool: [projectgenerator] version: [3.7.1] date: [Fri May 01 19:54:41 CEST 2020] # File automatically-generated by tool: [projectgenerator] version: [3.7.1] date: [Thu Jun 18 14:36:16 CEST 2020]
########################################################################################################################## ##########################################################################################################################
# ------------------------------------------------ # ------------------------------------------------
# Generic Makefile (based on gcc) # Generic Makefile (based on gcc)
# #
# ChangeLog : # ChangeLog :
# 2017-02-10 - Several enhancements + project update mode # 2017-02-10 - Several enhancements + project update mode
# 2015-07-22 - first version # 2015-07-22 - first version
# ------------------------------------------------ # ------------------------------------------------
###################################### ######################################
# target # target
###################################### ######################################
TARGET = f7 TARGET = f7
###################################### ######################################
# building variables # building variables
###################################### ######################################
# debug build? # debug build?
DEBUG = 0 DEBUG = 0
# optimization # optimization
OPT = -O3 OPT = -O3
####################################### #######################################
# paths # paths
####################################### #######################################
# Build path # Build path
BUILD_DIR = build BUILD_DIR = build
###################################### ######################################
# source # source
###################################### ######################################
# C sources # C sources
C_SOURCES = \ C_SOURCES = \
Src/main.c \ Src/main.c \
Src/stm32f7xx_it.c \ Src/stm32f7xx_it.c \
Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c \ Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_gpio.c \
Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c \ Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usart.c \
Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c \ Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_dma.c \
Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c \ Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_rcc.c \
Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c \ Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_utils.c \
Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c \ Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_exti.c \
Src/system_stm32f7xx.c \ Src/system_stm32f7xx.c \
Src/test.c \ Src/test.c \
Src/uartp.c \ Src/uartp.c \
$(SRC_FILES) $(SRC_FILES)
# ASM sources # ASM sources
ASM_SOURCES = \ ASM_SOURCES = \
startup_stm32f746xx.s \ startup_stm32f746xx.s \
$(ASM_FILES) $(ASM_FILES)
####################################### #######################################
# binaries # binaries
####################################### #######################################
PREFIX = arm-none-eabi- PREFIX = arm-none-eabi-
# The gcc compiler bin path can be either defined in make command via GCC_PATH variable (> make GCC_PATH=xxx) # The gcc compiler bin path can be either defined in make command via GCC_PATH variable (> make GCC_PATH=xxx)
# either it can be added to the PATH environment variable. # either it can be added to the PATH environment variable.
ifdef GCC_PATH ifdef GCC_PATH
CC = $(GCC_PATH)/$(PREFIX)gcc CC = $(GCC_PATH)/$(PREFIX)gcc
AS = $(GCC_PATH)/$(PREFIX)gcc -x assembler-with-cpp AS = $(GCC_PATH)/$(PREFIX)gcc -x assembler-with-cpp
CP = $(GCC_PATH)/$(PREFIX)objcopy CP = $(GCC_PATH)/$(PREFIX)objcopy
SZ = $(GCC_PATH)/$(PREFIX)size SZ = $(GCC_PATH)/$(PREFIX)size
else else
CC = $(PREFIX)gcc CC = $(PREFIX)gcc
AS = $(PREFIX)gcc -x assembler-with-cpp AS = $(PREFIX)gcc -x assembler-with-cpp
CP = $(PREFIX)objcopy CP = $(PREFIX)objcopy
SZ = $(PREFIX)size SZ = $(PREFIX)size
endif endif
HEX = $(CP) -O ihex HEX = $(CP) -O ihex
BIN = $(CP) -O binary -S BIN = $(CP) -O binary -S
####################################### #######################################
# CFLAGS # CFLAGS
####################################### #######################################
# cpu # cpu
CPU = -mcpu=cortex-m7 CPU = -mcpu=cortex-m7
# fpu # fpu
FPU = -mfpu=fpv5-sp-d16 FPU = -mfpu=fpv5-sp-d16
# float-abi # float-abi
FLOAT-ABI = -mfloat-abi=hard FLOAT-ABI = -mfloat-abi=hard
# mcu # mcu
MCU = $(CPU) -mthumb $(FPU) $(FLOAT-ABI) MCU = $(CPU) -mthumb $(FPU) $(FLOAT-ABI)
# macros for gcc # macros for gcc
# AS defines # AS defines
AS_DEFS = AS_DEFS =
# C defines # C defines
C_DEFS = \ C_DEFS = \
-DUSE_FULL_LL_DRIVER \ -DUSE_FULL_LL_DRIVER \
-DHSE_VALUE=8000000 \ -DHSE_VALUE=8000000 \
-DHSE_STARTUP_TIMEOUT=100 \ -DHSE_STARTUP_TIMEOUT=100 \
-DLSE_STARTUP_TIMEOUT=5000 \ -DLSE_STARTUP_TIMEOUT=5000 \
-DLSE_VALUE=32768 \ -DLSE_VALUE=32768 \
-DEXTERNAL_CLOCK_VALUE=12288000 \ -DEXTERNAL_CLOCK_VALUE=12288000 \
-DHSI_VALUE=16000000 \ -DHSI_VALUE=16000000 \
-DLSI_VALUE=32000 \ -DLSI_VALUE=32000 \
-DVDD_VALUE=3300 \ -DVDD_VALUE=3300 \
-DPREFETCH_ENABLE=0 \ -DSTM32F746xx \
-DART_ACCLERATOR_ENABLE=0 \ -DNDEBUG \
-DSTM32F746xx \ -UDEBUG \
-DNDEBUG \ -DPREFETCH_ENABLE=1 \
-UDEBUG -DART_ACCLERATOR_ENABLE=1
# AS includes # AS includes
AS_INCLUDES = AS_INCLUDES =
# C includes # C includes
C_INCLUDES = \ C_INCLUDES = \
-IInc \ -IInc \
-IDrivers/STM32F7xx_HAL_Driver/Inc \ -IDrivers/STM32F7xx_HAL_Driver/Inc \
-IDrivers/CMSIS/Device/ST/STM32F7xx/Include \ -IDrivers/CMSIS/Device/ST/STM32F7xx/Include \
-IDrivers/CMSIS/Include -IDrivers/CMSIS/Include
# compile gcc flags # compile gcc flags
ASFLAGS = $(MCU) $(AS_DEFS) $(AS_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections ASFLAGS = $(MCU) $(AS_DEFS) $(AS_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections
CFLAGS = $(MCU) $(C_DEFS) $(C_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections CFLAGS = $(MCU) $(C_DEFS) $(C_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections
ifeq ($(DEBUG), 1) ifeq ($(DEBUG), 1)
CFLAGS += -g -gdwarf-2 CFLAGS += -g -gdwarf-2
endif endif
# Generate dependency information # Generate dependency information
CFLAGS += -MMD -MP -MF"$(@:%.o=%.d)" CFLAGS += -MMD -MP -MF"$(@:%.o=%.d)"
####################################### #######################################
# LDFLAGS # LDFLAGS
####################################### #######################################
# link script # link script
LDSCRIPT = STM32F746ZGTx_FLASH.ld LDSCRIPT = STM32F746ZGTx_FLASH.ld
# libraries # libraries
LIBS = -lc -lm -lnosys LIBS = -lc -lm -lnosys
LIBDIR = LIBDIR =
LDFLAGS = $(MCU) -specs=nano.specs -T$(LDSCRIPT) $(LIBDIR) $(LIBS) -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref -Wl,--gc-sections LDFLAGS = $(MCU) -specs=nano.specs -T$(LDSCRIPT) $(LIBDIR) $(LIBS) -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref -Wl,--gc-sections
# default action: build all # default action: build all
all: $(BUILD_DIR)/$(TARGET).elf $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin all: $(BUILD_DIR)/$(TARGET).elf $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin
####################################### #######################################
# build the application # build the application
####################################### #######################################
# list of objects # list of objects
OBJECTS = $(addprefix $(BUILD_DIR)/,$(notdir $(C_SOURCES:.c=.o))) OBJECTS = $(addprefix $(BUILD_DIR)/,$(notdir $(C_SOURCES:.c=.o)))
vpath %.c $(sort $(dir $(C_SOURCES))) vpath %.c $(sort $(dir $(C_SOURCES)))
# list of ASM program objects # list of ASM program objects
ASM_OBJS=$(ASM_SOURCES:.S=.o) ASM_OBJS=$(ASM_SOURCES:.S=.o)
OBJECTS += $(addprefix $(BUILD_DIR)/,$(notdir $(ASM_OBJS:.s=.o))) OBJECTS += $(addprefix $(BUILD_DIR)/,$(notdir $(ASM_OBJS:.s=.o)))
vpath %.s $(sort $(dir $(ASM_SOURCES))) vpath %.s $(sort $(dir $(ASM_SOURCES)))
$(BUILD_DIR)/%.o: %.c Makefile | $(BUILD_DIR) $(BUILD_DIR)/%.o: %.c Makefile | $(BUILD_DIR)
$(CC) -c $(CFLAGS) -Wa,-a,-ad,-alms=$(BUILD_DIR)/$(notdir $(<:.c=.lst)) $< -o $@ $(CC) -c $(CFLAGS) -Wa,-a,-ad,-alms=$(BUILD_DIR)/$(notdir $(<:.c=.lst)) $< -o $@
$(BUILD_DIR)/%.o: %.s Makefile | $(BUILD_DIR) $(BUILD_DIR)/%.o: %.s Makefile | $(BUILD_DIR)
$(AS) -c $(CFLAGS) $< -o $@ $(AS) -c $(CFLAGS) $< -o $@
$(BUILD_DIR)/%.o: %.S Makefile | $(BUILD_DIR) $(BUILD_DIR)/%.o: %.S Makefile | $(BUILD_DIR)
$(AS) -c $(CFLAGS) $< -o $@ $(AS) -c $(CFLAGS) $< -o $@
$(BUILD_DIR)/$(TARGET).elf: $(OBJECTS) Makefile $(BUILD_DIR)/$(TARGET).elf: $(OBJECTS) Makefile
$(CC) $(OBJECTS) $(LDFLAGS) -o $@ $(CC) $(OBJECTS) $(LDFLAGS) -o $@
$(SZ) $@ $(SZ) $@
$(BUILD_DIR)/%.hex: $(BUILD_DIR)/%.elf | $(BUILD_DIR) $(BUILD_DIR)/%.hex: $(BUILD_DIR)/%.elf | $(BUILD_DIR)
$(HEX) $< $@ $(HEX) $< $@
$(BUILD_DIR)/%.bin: $(BUILD_DIR)/%.elf | $(BUILD_DIR) $(BUILD_DIR)/%.bin: $(BUILD_DIR)/%.elf | $(BUILD_DIR)
$(BIN) $< $@ $(BIN) $< $@
$(BUILD_DIR): $(BUILD_DIR):
mkdir $@ mkdir $@
####################################### #######################################
# clean up # clean up
####################################### #######################################
clean: clean:
-rm -fR $(BUILD_DIR) -rm -fR $(BUILD_DIR)
####################################### #######################################
# dependencies # dependencies
####################################### #######################################
-include $(wildcard $(BUILD_DIR)/*.d) -include $(wildcard $(BUILD_DIR)/*.d)
# *** EOF *** # *** EOF ***
/* USER CODE BEGIN Header */ /* USER CODE BEGIN Header */
/** /**
****************************************************************************** ******************************************************************************
* @file : main.c * @file : main.c
* @brief : Main program body * @brief : Main program body
****************************************************************************** ******************************************************************************
* @attention * @attention
* *
* <h2><center>&copy; Copyright (c) 2019 STMicroelectronics. * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
* All rights reserved.</center></h2> * All rights reserved.</center></h2>
* *
* This software component is licensed by ST under BSD 3-Clause license, * This software component is licensed by ST under BSD 3-Clause license,
* the "License"; You may not use this file except in compliance with the * the "License"; You may not use this file except in compliance with the
* License. You may obtain a copy of the License at: * License. You may obtain a copy of the License at:
* opensource.org/licenses/BSD-3-Clause * opensource.org/licenses/BSD-3-Clause
* *
****************************************************************************** ******************************************************************************
*/ */
/* USER CODE END Header */ /* USER CODE END Header */
/* Includes ------------------------------------------------------------------*/ /* Includes ------------------------------------------------------------------*/
#include "main.h" #include "main.h"
/* Private includes ----------------------------------------------------------*/ /* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */ /* USER CODE BEGIN Includes */
#include "test.h" #include "test.h"
/* USER CODE END Includes */ /* USER CODE END Includes */
/* Private typedef -----------------------------------------------------------*/ /* Private typedef -----------------------------------------------------------*/
/* USER CODE BEGIN PTD */ /* USER CODE BEGIN PTD */
/* USER CODE END PTD */ /* USER CODE END PTD */
/* Private define ------------------------------------------------------------*/ /* Private define ------------------------------------------------------------*/
/* USER CODE BEGIN PD */ /* USER CODE BEGIN PD */
/* USER CODE END PD */ /* USER CODE END PD */
/* Private macro -------------------------------------------------------------*/ /* Private macro -------------------------------------------------------------*/
/* USER CODE BEGIN PM */ /* USER CODE BEGIN PM */
/* USER CODE END PM */ /* USER CODE END PM */
/* Private variables ---------------------------------------------------------*/ /* Private variables ---------------------------------------------------------*/
/* USER CODE BEGIN PV */ /* USER CODE BEGIN PV */
/* USER CODE END PV */ /* USER CODE END PV */
/* Private function prototypes -----------------------------------------------*/ /* Private function prototypes -----------------------------------------------*/
void SystemClock_Config(void); void SystemClock_Config(void);
static void MX_GPIO_Init(void); static void MX_GPIO_Init(void);
static void MX_USART2_UART_Init(void); static void MX_USART2_UART_Init(void);
static void MX_USART3_UART_Init(void); static void MX_USART3_UART_Init(void);
/* USER CODE BEGIN PFP */ /* USER CODE BEGIN PFP */
/* USER CODE END PFP */ /* USER CODE END PFP */
/* Private user code ---------------------------------------------------------*/ /* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */ /* USER CODE BEGIN 0 */
/* USER CODE END 0 */ /* USER CODE END 0 */
/** /**
* @brief The application entry point. * @brief The application entry point.
* @retval int * @retval int
*/ */
int main(void) int main(void)
{ {
/* USER CODE BEGIN 1 */ /* USER CODE BEGIN 1 */
/* USER CODE END 1 */ /* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/ /* Enable I-Cache---------------------------------------------------------*/
SCB_EnableICache();
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
/* Enable D-Cache---------------------------------------------------------*/
SCB_EnableDCache();
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_PWR);
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SYSCFG); /* MCU Configuration--------------------------------------------------------*/
NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
/* System interrupt init*/
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_PWR);
/* USER CODE BEGIN Init */ LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SYSCFG);
/* USER CODE END Init */ NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4);
/* Configure the system clock */ /* System interrupt init*/
SystemClock_Config();
/* USER CODE BEGIN Init */
/* USER CODE BEGIN SysInit */
/* USER CODE END Init */
/* USER CODE END SysInit */
/* Configure the system clock */
/* Initialize all configured peripherals */ SystemClock_Config();
MX_GPIO_Init();
MX_USART2_UART_Init(); /* USER CODE BEGIN SysInit */
MX_USART3_UART_Init();
/* USER CODE BEGIN 2 */ /* USER CODE END SysInit */
test_setup();
/* USER CODE END 2 */ /* Initialize all configured peripherals */
MX_GPIO_Init();
/* Infinite loop */ MX_USART2_UART_Init();
/* USER CODE BEGIN WHILE */ MX_USART3_UART_Init();
while (1) /* USER CODE BEGIN 2 */
{ test_setup();
test_loop(); /* USER CODE END 2 */
/* USER CODE END WHILE */
/* Infinite loop */
/* USER CODE BEGIN 3 */ /* USER CODE BEGIN WHILE */
} while (1)
/* USER CODE END 3 */ {
} test_loop();
/* USER CODE END WHILE */
/**
* @brief System Clock Configuration /* USER CODE BEGIN 3 */
* @retval None }
*/ /* USER CODE END 3 */
void SystemClock_Config(void) }
{
LL_FLASH_SetLatency(LL_FLASH_LATENCY_7); /**
* @brief System Clock Configuration
if(LL_FLASH_GetLatency() != LL_FLASH_LATENCY_7) * @retval None
{ */
Error_Handler(); void SystemClock_Config(void)
} {
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1); LL_FLASH_SetLatency(LL_FLASH_LATENCY_7);
LL_PWR_EnableOverDriveMode();
LL_RCC_HSE_EnableBypass(); if(LL_FLASH_GetLatency() != LL_FLASH_LATENCY_7)
LL_RCC_HSE_Enable(); {
Error_Handler();
/* Wait till HSE is ready */ }
while(LL_RCC_HSE_IsReady() != 1) LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
{ LL_PWR_EnableOverDriveMode();
LL_RCC_HSE_EnableBypass();
} LL_RCC_HSE_Enable();
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_HSE, LL_RCC_PLLM_DIV_4, 216, LL_RCC_PLLP_DIV_2);
LL_RCC_PLL_Enable(); /* Wait till HSE is ready */
while(LL_RCC_HSE_IsReady() != 1)
/* Wait till PLL is ready */ {
while(LL_RCC_PLL_IsReady() != 1)
{ }
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_HSE, LL_RCC_PLLM_DIV_4, 216, LL_RCC_PLLP_DIV_2);
} LL_RCC_PLL_Enable();
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_4); /* Wait till PLL is ready */
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_2); while(LL_RCC_PLL_IsReady() != 1)
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL); {
/* Wait till System clock is ready */ }
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL) LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
{ LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_4);
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_2);
} LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
LL_Init1msTick(216000000);
LL_SetSystemCoreClock(216000000); /* Wait till System clock is ready */
LL_RCC_SetUSARTClockSource(LL_RCC_USART2_CLKSOURCE_PCLK1); while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
LL_RCC_SetUSARTClockSource(LL_RCC_USART3_CLKSOURCE_PCLK1); {
}
}
/** LL_Init1msTick(216000000);
* @brief USART2 Initialization Function LL_SetSystemCoreClock(216000000);
* @param None LL_RCC_SetUSARTClockSource(LL_RCC_USART2_CLKSOURCE_PCLK1);
* @retval None LL_RCC_SetUSARTClockSource(LL_RCC_USART3_CLKSOURCE_PCLK1);
*/ }
static void MX_USART2_UART_Init(void)
{ /**
* @brief USART2 Initialization Function
/* USER CODE BEGIN USART2_Init 0 */ * @param None
* @retval None
/* USER CODE END USART2_Init 0 */ */
static void MX_USART2_UART_Init(void)
LL_USART_InitTypeDef USART_InitStruct = {0}; {
LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; /* USER CODE BEGIN USART2_Init 0 */
/* Peripheral clock enable */ /* USER CODE END USART2_Init 0 */
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_USART2);
LL_USART_InitTypeDef USART_InitStruct = {0};
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOD);
/**USART2 GPIO Configuration LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
PD5 ------> USART2_TX
PD6 ------> USART2_RX /* Peripheral clock enable */
*/ LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_USART2);
GPIO_InitStruct.Pin = LL_GPIO_PIN_5;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOD);
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; /**USART2 GPIO Configuration
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; PD5 ------> USART2_TX
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; PD6 ------> USART2_RX
GPIO_InitStruct.Alternate = LL_GPIO_AF_7; */
LL_GPIO_Init(GPIOD, &GPIO_InitStruct); GPIO_InitStruct.Pin = LL_GPIO_PIN_5;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
GPIO_InitStruct.Pin = LL_GPIO_PIN_6; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; GPIO_InitStruct.Alternate = LL_GPIO_AF_7;
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; LL_GPIO_Init(GPIOD, &GPIO_InitStruct);
GPIO_InitStruct.Alternate = LL_GPIO_AF_7;
LL_GPIO_Init(GPIOD, &GPIO_InitStruct); GPIO_InitStruct.Pin = LL_GPIO_PIN_6;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
/* USART2 interrupt Init */ GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH;
NVIC_SetPriority(USART2_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
NVIC_EnableIRQ(USART2_IRQn); GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.Alternate = LL_GPIO_AF_7;
/* USER CODE BEGIN USART2_Init 1 */ LL_GPIO_Init(GPIOD, &GPIO_InitStruct);
/* USER CODE END USART2_Init 1 */ /* USART2 interrupt Init */
USART_InitStruct.BaudRate = 115200; NVIC_SetPriority(USART2_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0));
USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; NVIC_EnableIRQ(USART2_IRQn);
USART_InitStruct.StopBits = LL_USART_STOPBITS_1;
USART_InitStruct.Parity = LL_USART_PARITY_NONE; /* USER CODE BEGIN USART2_Init 1 */
USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX;
USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; /* USER CODE END USART2_Init 1 */
USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; USART_InitStruct.BaudRate = 115200;
LL_USART_Init(USART2, &USART_InitStruct); USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B;
LL_USART_ConfigAsyncMode(USART2); USART_InitStruct.StopBits = LL_USART_STOPBITS_1;
LL_USART_Enable(USART2); USART_InitStruct.Parity = LL_USART_PARITY_NONE;
/* USER CODE BEGIN USART2_Init 2 */ USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX;
USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE;
/* USER CODE END USART2_Init 2 */ USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16;
LL_USART_Init(USART2, &USART_InitStruct);
} LL_USART_ConfigAsyncMode(USART2);
LL_USART_Enable(USART2);
/** /* USER CODE BEGIN USART2_Init 2 */
* @brief USART3 Initialization Function
* @param None /* USER CODE END USART2_Init 2 */
* @retval None
*/ }
static void MX_USART3_UART_Init(void)
{ /**
* @brief USART3 Initialization Function
/* USER CODE BEGIN USART3_Init 0 */ * @param None
* @retval None
/* USER CODE END USART3_Init 0 */ */
static void MX_USART3_UART_Init(void)
LL_USART_InitTypeDef USART_InitStruct = {0}; {
LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; /* USER CODE BEGIN USART3_Init 0 */
/* Peripheral clock enable */ /* USER CODE END USART3_Init 0 */
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_USART3);
LL_USART_InitTypeDef USART_InitStruct = {0};
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOD);
/**USART3 GPIO Configuration LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
PD8 ------> USART3_TX
PD9 ------> USART3_RX /* Peripheral clock enable */
*/ LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_USART3);
GPIO_InitStruct.Pin = STLK_RX_Pin;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOD);
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; /**USART3 GPIO Configuration
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; PD8 ------> USART3_TX
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; PD9 ------> USART3_RX
GPIO_InitStruct.Alternate = LL_GPIO_AF_7; */
LL_GPIO_Init(STLK_RX_GPIO_Port, &GPIO_InitStruct); GPIO_InitStruct.Pin = STLK_RX_Pin;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
GPIO_InitStruct.Pin = STLK_TX_Pin; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; GPIO_InitStruct.Alternate = LL_GPIO_AF_7;
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; LL_GPIO_Init(STLK_RX_GPIO_Port, &GPIO_InitStruct);
GPIO_InitStruct.Alternate = LL_GPIO_AF_7;
LL_GPIO_Init(STLK_TX_GPIO_Port, &GPIO_InitStruct); GPIO_InitStruct.Pin = STLK_TX_Pin;
GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
/* USER CODE BEGIN USART3_Init 1 */ GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
/* USER CODE END USART3_Init 1 */ GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
USART_InitStruct.BaudRate = 115200; GPIO_InitStruct.Alternate = LL_GPIO_AF_7;
USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; LL_GPIO_Init(STLK_TX_GPIO_Port, &GPIO_InitStruct);
USART_InitStruct.StopBits = LL_USART_STOPBITS_1;
USART_InitStruct.Parity = LL_USART_PARITY_NONE; /* USER CODE BEGIN USART3_Init 1 */
USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX;
USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; /* USER CODE END USART3_Init 1 */
USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; USART_InitStruct.BaudRate = 115200;
LL_USART_Init(USART3, &USART_InitStruct); USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B;
LL_USART_ConfigAsyncMode(USART3); USART_InitStruct.StopBits = LL_USART_STOPBITS_1;
LL_USART_Enable(USART3); USART_InitStruct.Parity = LL_USART_PARITY_NONE;
/* USER CODE BEGIN USART3_Init 2 */ USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX;
USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE;
/* USER CODE END USART3_Init 2 */ USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16;
LL_USART_Init(USART3, &USART_InitStruct);
} LL_USART_ConfigAsyncMode(USART3);
LL_USART_Enable(USART3);
/** /* USER CODE BEGIN USART3_Init 2 */
* @brief GPIO Initialization Function
* @param None /* USER CODE END USART3_Init 2 */
* @retval None
*/ }
static void MX_GPIO_Init(void)
{ /**
LL_EXTI_InitTypeDef EXTI_InitStruct = {0}; * @brief GPIO Initialization Function
LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; * @param None
* @retval None
/* GPIO Ports Clock Enable */ */
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOC); static void MX_GPIO_Init(void)
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOH); {
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOB); LL_EXTI_InitTypeDef EXTI_InitStruct = {0};
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOD); LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOG);
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOA); /* GPIO Ports Clock Enable */
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOC);
/**/ LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOH);
LL_GPIO_ResetOutputPin(LD1_GPIO_Port, LD1_Pin); LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOB);
LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOD);
/**/ LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOG);
LL_GPIO_ResetOutputPin(LD3_GPIO_Port, LD3_Pin); LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOA);
/**/ /**/
LL_GPIO_ResetOutputPin(USB_PowerSwitchOn_GPIO_Port, USB_PowerSwitchOn_Pin); LL_GPIO_ResetOutputPin(LD1_GPIO_Port, LD1_Pin);
/**/ /**/
LL_GPIO_ResetOutputPin(LD2_GPIO_Port, LD2_Pin); LL_GPIO_ResetOutputPin(LD3_GPIO_Port, LD3_Pin);
/**/ /**/
LL_GPIO_SetOutputPin(CRYPTO_BUSY_GPIO_Port, CRYPTO_BUSY_Pin); LL_GPIO_ResetOutputPin(USB_PowerSwitchOn_GPIO_Port, USB_PowerSwitchOn_Pin);
/**/ /**/
LL_SYSCFG_SetEXTISource(LL_SYSCFG_EXTI_PORTC, LL_SYSCFG_EXTI_LINE13); LL_GPIO_ResetOutputPin(LD2_GPIO_Port, LD2_Pin);
/**/ /**/
EXTI_InitStruct.Line_0_31 = LL_EXTI_LINE_13; LL_GPIO_SetOutputPin(CRYPTO_BUSY_GPIO_Port, CRYPTO_BUSY_Pin);
EXTI_InitStruct.LineCommand = ENABLE;
EXTI_InitStruct.Mode = LL_EXTI_MODE_IT; /**/
EXTI_InitStruct.Trigger = LL_EXTI_TRIGGER_RISING; LL_SYSCFG_SetEXTISource(LL_SYSCFG_EXTI_PORTC, LL_SYSCFG_EXTI_LINE13);
LL_EXTI_Init(&EXTI_InitStruct);
/**/
/**/ EXTI_InitStruct.Line_0_31 = LL_EXTI_LINE_13;
LL_GPIO_SetPinPull(USER_Btn_GPIO_Port, USER_Btn_Pin, LL_GPIO_PULL_NO); EXTI_InitStruct.LineCommand = ENABLE;
EXTI_InitStruct.Mode = LL_EXTI_MODE_IT;
/**/ EXTI_InitStruct.Trigger = LL_EXTI_TRIGGER_RISING;
LL_GPIO_SetPinMode(USER_Btn_GPIO_Port, USER_Btn_Pin, LL_GPIO_MODE_INPUT); LL_EXTI_Init(&EXTI_InitStruct);
/**/ /**/
GPIO_InitStruct.Pin = LD1_Pin; LL_GPIO_SetPinPull(USER_Btn_GPIO_Port, USER_Btn_Pin, LL_GPIO_PULL_NO);
GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW; /**/
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; LL_GPIO_SetPinMode(USER_Btn_GPIO_Port, USER_Btn_Pin, LL_GPIO_MODE_INPUT);
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
LL_GPIO_Init(LD1_GPIO_Port, &GPIO_InitStruct); /**/
GPIO_InitStruct.Pin = LD1_Pin;
/**/ GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
GPIO_InitStruct.Pin = LD3_Pin; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; LL_GPIO_Init(LD1_GPIO_Port, &GPIO_InitStruct);
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
LL_GPIO_Init(LD3_GPIO_Port, &GPIO_InitStruct); /**/
GPIO_InitStruct.Pin = LD3_Pin;
/**/ GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
GPIO_InitStruct.Pin = USB_PowerSwitchOn_Pin; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; LL_GPIO_Init(LD3_GPIO_Port, &GPIO_InitStruct);
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
LL_GPIO_Init(USB_PowerSwitchOn_GPIO_Port, &GPIO_InitStruct); /**/
GPIO_InitStruct.Pin = USB_PowerSwitchOn_Pin;
/**/ GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
GPIO_InitStruct.Pin = USB_OverCurrent_Pin; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.Mode = LL_GPIO_MODE_INPUT; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
LL_GPIO_Init(USB_OverCurrent_GPIO_Port, &GPIO_InitStruct); LL_GPIO_Init(USB_PowerSwitchOn_GPIO_Port, &GPIO_InitStruct);
/**/ /**/
GPIO_InitStruct.Pin = CRYPTO_BUSY_Pin; GPIO_InitStruct.Pin = USB_OverCurrent_Pin;
GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT; GPIO_InitStruct.Mode = LL_GPIO_MODE_INPUT;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; LL_GPIO_Init(USB_OverCurrent_GPIO_Port, &GPIO_InitStruct);
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
LL_GPIO_Init(CRYPTO_BUSY_GPIO_Port, &GPIO_InitStruct); /**/
GPIO_InitStruct.Pin = CRYPTO_BUSY_Pin;
/**/ GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
GPIO_InitStruct.Pin = LD2_Pin; GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT; GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; LL_GPIO_Init(CRYPTO_BUSY_GPIO_Port, &GPIO_InitStruct);
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
LL_GPIO_Init(LD2_GPIO_Port, &GPIO_InitStruct); /**/
GPIO_InitStruct.Pin = LD2_Pin;
} GPIO_InitStruct.Mode = LL_GPIO_MODE_OUTPUT;
GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_LOW;
/* USER CODE BEGIN 4 */ GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL;
GPIO_InitStruct.Pull = LL_GPIO_PULL_NO;
/* USER CODE END 4 */ LL_GPIO_Init(LD2_GPIO_Port, &GPIO_InitStruct);
/** }
* @brief This function is executed in case of error occurrence.
* @retval None /* USER CODE BEGIN 4 */
*/
void Error_Handler(void) /* USER CODE END 4 */
{
/* USER CODE BEGIN Error_Handler_Debug */ /**
/* User can add his own implementation to report the HAL error return state */ * @brief This function is executed in case of error occurrence.
* @retval None
/* USER CODE END Error_Handler_Debug */ */
} void Error_Handler(void)
{
#ifdef USE_FULL_ASSERT /* USER CODE BEGIN Error_Handler_Debug */
/** /* User can add his own implementation to report the HAL error return state */
* @brief Reports the name of the source file and the source line number
* where the assert_param error has occurred. /* USER CODE END Error_Handler_Debug */
* @param file: pointer to the source file name }
* @param line: assert_param error line source number
* @retval None #ifdef USE_FULL_ASSERT
*/ /**
void assert_failed(uint8_t *file, uint32_t line) * @brief Reports the name of the source file and the source line number
{ * where the assert_param error has occurred.
/* USER CODE BEGIN 6 */ * @param file: pointer to the source file name
/* User can add his own implementation to report the file name and line number, * @param line: assert_param error line source number
tex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ * @retval None
/* USER CODE END 6 */ */
} void assert_failed(uint8_t *file, uint32_t line)
#endif /* USE_FULL_ASSERT */ {
/* USER CODE BEGIN 6 */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ /* User can add his own implementation to report the file name and line number,
tex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
/* USER CODE END 6 */
}
#endif /* USE_FULL_ASSERT */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
#MicroXplorer Configuration settings - do not modify #MicroXplorer Configuration settings - do not modify
Mcu.Family=STM32F7 CORTEX_M7.ART_ACCLERATOR_ENABLE=1
ProjectManager.MainLocation=Src CORTEX_M7.CPU_DCache=Enabled
RCC.MCOFreq_Value=72000000 CORTEX_M7.CPU_ICache=Enabled
RCC.USART1Freq_Value=108000000 CORTEX_M7.IPParameters=PREFETCH_ENABLE,CPU_ICache,CPU_DCache,ART_ACCLERATOR_ENABLE
RCC.SAI1Freq_Value=192000000 CORTEX_M7.PREFETCH_ENABLE=1
USART2.IPParameters=VirtualMode-Asynchronous File.Version=6
RCC.CortexFreq_Value=216000000 GPIO.groupedBy=Group By Peripherals
RCC.TIM17Freq_Value=72000000 KeepUserPlacement=true
PG6.Signal=GPIO_Output Mcu.Family=STM32F7
ProjectManager.KeepUserCode=true Mcu.IP0=CORTEX_M7
Mcu.UserName=STM32F746ZGTx Mcu.IP1=NVIC
PD9.GPIOParameters=GPIO_Label Mcu.IP2=RCC
PG6.Locked=true Mcu.IP3=SYS
RCC.PLLCLKFreq_Value=216000000 Mcu.IP4=USART2
PB14.GPIO_Label=LD3 [Red] Mcu.IP5=USART3
PG6.GPIO_Label=USB_PowerSwitchOn [STMPS2151STR_EN] Mcu.IPNb=6
PA14.GPIO_Label=TCK Mcu.Name=STM32F746ZGTx
RCC.PLLQCLKFreq_Value=144000000 Mcu.Package=LQFP144
RCC.SYSCLKSourceVirtual=RCC_SYSCLKSOURCE_PLLCLK Mcu.Pin0=PC13
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-LL-true,2-SystemClock_Config-RCC-false-LL-false,3-MX_USART2_UART_Init-USART2-false-LL-true,4-MX_USART3_UART_Init-USART3-false-LL-true,5-MX_CORTEX_M7_Init-CORTEX_M7-false-LL-true Mcu.Pin1=PC14/OSC32_IN
PD8.Locked=true Mcu.Pin10=PG7
RCC.RTCFreq_Value=32000 Mcu.Pin11=PA13
PD6.Locked=true Mcu.Pin12=PA14
PB0.GPIO_Label=LD1 [Green] Mcu.Pin13=PA15
PC14/OSC32_IN.Mode=LSE-External-Oscillator Mcu.Pin14=PD5
RCC.PLLI2SRCLKFreq_Value=192000000 Mcu.Pin15=PD6
RCC.USART2Freq_Value=54000000 Mcu.Pin16=PD7
PC13.GPIO_Label=USER_Btn [B1] Mcu.Pin17=PB3
PD9.Mode=Asynchronous Mcu.Pin18=PB4
PinOutPanel.RotationAngle=0 Mcu.Pin19=PB7
RCC.MCO1PinFreq_Value=16000000 Mcu.Pin2=PC15/OSC32_OUT
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK Mcu.Pin20=VP_SYS_VS_Systick
ProjectManager.StackSize=0x400 Mcu.Pin3=PH0/OSC_IN
SH.GPXTI13.0=GPIO_EXTI13 Mcu.Pin4=PH1/OSC_OUT
USART3.VirtualMode-Asynchronous=VM_ASYNC Mcu.Pin5=PB0
RCC.I2C3Freq_Value=54000000 Mcu.Pin6=PB14
RCC.LPTIM1Freq_Value=54000000 Mcu.Pin7=PD8
Mcu.IP4=USART2 Mcu.Pin8=PD9
RCC.FCLKCortexFreq_Value=216000000 Mcu.Pin9=PG6
Mcu.IP5=USART3 Mcu.PinsNb=21
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:true\:false Mcu.ThirdPartyNb=0
Mcu.IP2=RCC Mcu.UserConstants=
Mcu.IP3=SYS Mcu.UserName=STM32F746ZGTx
Mcu.IP0=CORTEX_M7 MxCube.Version=5.6.0
Mcu.IP1=NVIC MxDb.Version=DB.5.0.60
Mcu.UserConstants= NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
RCC.SDMMCFreq_Value=216000000 NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:true\:false
SH.GPXTI13.ConfNb=1 NVIC.ForceEnableDMAVector=true
Mcu.ThirdPartyNb=0 NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
PH0/OSC_IN.Mode=HSE-External-Clock-Source NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:true\:false
RCC.HCLKFreq_Value=216000000 NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:true\:false
RCC.I2C4Freq_Value=54000000 NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:true\:false
Mcu.IPNb=6 NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
RCC.I2SClocksFreq_Value=48000000 NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:true\:false
RCC.PLLI2SRoutputFreq_Value=192000000 NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:true\:true
ProjectManager.PreviousToolchain= NVIC.USART2_IRQn=true\:0\:0\:false\:false\:true\:true\:true
RCC.APB2TimFreq_Value=216000000 NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false
RCC.SPDIFRXFreq_Value=192000000 PA13.GPIOParameters=GPIO_Label
RCC.VcooutputI2S=48000000 PA13.GPIO_Label=TMS
PH1/OSC_OUT.Signal=RCC_OSC_OUT PA13.Locked=true
PD8.GPIOParameters=GPIO_Label PA13.Mode=Serial_Wire
Mcu.Pin6=PB14 PA13.Signal=SYS_JTMS-SWDIO
RCC.SAI2Freq_Value=192000000 PA14.GPIOParameters=GPIO_Label
PD8.Signal=USART3_TX PA14.GPIO_Label=TCK
Mcu.Pin7=PD8 PA14.Locked=true
Mcu.Pin8=PD9 PA14.Mode=Serial_Wire
Mcu.Pin9=PG6 PA14.Signal=SYS_JTCK-SWCLK
RCC.VCOSAIOutputFreq_Value=384000000 PA15.Locked=true
RCC.AHBFreq_Value=216000000 PA15.Signal=SYS_JTDI
RCC.TIM2Freq_Value=72000000 PB0.GPIOParameters=GPIO_Label
Mcu.Pin0=PC13 PB0.GPIO_Label=LD1 [Green]
Mcu.Pin1=PC14/OSC32_IN PB0.Locked=true
PD5.Mode=Asynchronous PB0.Signal=GPIO_Output
Mcu.Pin2=PC15/OSC32_OUT PB14.GPIOParameters=GPIO_Label
Mcu.Pin3=PH0/OSC_IN PB14.GPIO_Label=LD3 [Red]
RCC.USART3Freq_Value=54000000 PB14.Locked=true
Mcu.Pin4=PH1/OSC_OUT PB14.Signal=GPIO_Output
Mcu.Pin5=PB0 PB3.Locked=true
RCC.PLLSAIRCLKFreq_Value=192000000 PB3.Signal=SYS_JTDO-SWO
ProjectManager.ProjectBuild=false PB4.Locked=true
RCC.HSE_VALUE=8000000 PB4.Signal=SYS_JTRST
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false PB7.GPIOParameters=GPIO_Label
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:true\:false PB7.GPIO_Label=LD2 [Blue]
USART2.VirtualMode-Asynchronous=VM_ASYNC PB7.Locked=true
NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:true\:true PB7.Signal=GPIO_Output
RCC.PLLMUL=RCC_PLL_MUL9 PC13.GPIOParameters=GPIO_Label
PD7.GPIO_Speed=GPIO_SPEED_FREQ_VERY_HIGH PC13.GPIO_Label=USER_Btn [B1]
PH0/OSC_IN.Locked=true PC13.Locked=true
ProjectManager.FirmwarePackage=STM32Cube FW_F7 V1.16.0 PC13.Signal=GPXTI13
MxDb.Version=DB.5.0.60 PC14/OSC32_IN.Locked=true
PB0.GPIOParameters=GPIO_Label PC14/OSC32_IN.Mode=LSE-External-Oscillator
ProjectManager.BackupPrevious=false PC14/OSC32_IN.Signal=RCC_OSC32_IN
RCC.VCOInputFreq_Value=2000000 PC15/OSC32_OUT.Locked=true
PA14.Mode=Serial_Wire PC15/OSC32_OUT.Mode=LSE-External-Oscillator
PH1/OSC_OUT.Locked=true PC15/OSC32_OUT.Signal=RCC_OSC32_OUT
File.Version=6 PD5.Mode=Asynchronous
PB7.Signal=GPIO_Output PD5.Signal=USART2_TX
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:true\:false PD6.Locked=true
PC15/OSC32_OUT.Locked=true PD6.Mode=Asynchronous
PH1/OSC_OUT.Mode=HSE-External-Clock-Source PD6.Signal=USART2_RX
ProjectManager.HalAssertFull=false PD7.GPIOParameters=GPIO_Speed,PinState,GPIO_Label
PB0.Locked=true PD7.GPIO_Label=CRYPTO_BUSY
ProjectManager.ProjectName=f7 PD7.GPIO_Speed=GPIO_SPEED_FREQ_VERY_HIGH
RCC.TIM1Freq_Value=72000000 PD7.Locked=true
PD7.GPIO_Label=CRYPTO_BUSY PD7.PinState=GPIO_PIN_SET
PA13.GPIOParameters=GPIO_Label PD7.Signal=GPIO_Output
RCC.PLLMCOFreq_Value=72000000 PD8.GPIOParameters=GPIO_Label
PB7.GPIO_Label=LD2 [Blue] PD8.GPIO_Label=STLK_RX [STM32F103CBT6_PA3]
RCC.MCO2PinFreq_Value=216000000 PD8.Locked=true
Mcu.Package=LQFP144 PD8.Mode=Asynchronous
RCC.TIM15Freq_Value=72000000 PD8.Signal=USART3_TX
RCC.ADC34outputFreq_Value=72000000 PD9.GPIOParameters=GPIO_Label
PC14/OSC32_IN.Signal=RCC_OSC32_IN PD9.GPIO_Label=STLK_TX [STM32F103CBT6_PA2]
PA14.Locked=true PD9.Locked=true
ProjectManager.ToolChainLocation= PD9.Mode=Asynchronous
RCC.LSI_VALUE=32000 PD9.Signal=USART3_RX
VP_SYS_VS_Systick.Signal=SYS_VS_Systick PG6.GPIOParameters=GPIO_Label
USART3.IPParameters=VirtualMode-Asynchronous PG6.GPIO_Label=USB_PowerSwitchOn [STMPS2151STR_EN]
PA15.Signal=SYS_JTDI PG6.Locked=true
PB14.GPIOParameters=GPIO_Label PG6.Signal=GPIO_Output
RCC.TIM16Freq_Value=72000000 PG7.GPIOParameters=GPIO_Label
RCC.APB2CLKDivider=RCC_HCLK_DIV2 PG7.GPIO_Label=USB_OverCurrent [STMPS2151STR_FAULT]
RCC.CECFreq_Value=32786.88524590164 PG7.Locked=true
RCC.APB1TimFreq_Value=108000000 PG7.Signal=GPIO_Input
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false PH0/OSC_IN.GPIOParameters=GPIO_Label
PD6.Signal=USART2_RX PH0/OSC_IN.GPIO_Label=MCO [STM32F103CBT6_PA8]
ProjectManager.CustomerFirmwarePackage= PH0/OSC_IN.Locked=true
RCC.PLLSAIQCLKFreq_Value=192000000 PH0/OSC_IN.Mode=HSE-External-Clock-Source
PB3.Locked=true PH0/OSC_IN.Signal=RCC_OSC_IN
PB4.Signal=SYS_JTRST PH1/OSC_OUT.Locked=true
RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE PH1/OSC_OUT.Mode=HSE-External-Clock-Source
RCC.I2SFreq_Value=192000000 PH1/OSC_OUT.Signal=RCC_OSC_OUT
RCC.PLLQoutputFreq_Value=144000000 PinOutPanel.RotationAngle=0
ProjectManager.ProjectFileName=f7.ioc ProjectManager.AskForMigrate=true
RCC.ADC12outputFreq_Value=72000000 ProjectManager.BackupPrevious=false
PG7.Locked=true ProjectManager.CompilerOptimize=6
PG7.Signal=GPIO_Input ProjectManager.ComputerToolchain=false
RCC.UART7Freq_Value=54000000 ProjectManager.CoupleFile=false
PD9.GPIO_Label=STLK_TX [STM32F103CBT6_PA2] ProjectManager.CustomerFirmwarePackage=
Mcu.PinsNb=21 ProjectManager.DefaultFWLocation=true
ProjectManager.NoMain=false ProjectManager.DeletePrevious=true
PC13.Locked=true ProjectManager.DeviceId=STM32F746ZGTx
PC13.Signal=GPXTI13 ProjectManager.FirmwarePackage=STM32Cube FW_F7 V1.16.0
PD7.Signal=GPIO_Output ProjectManager.FreePins=false
ProjectManager.DefaultFWLocation=true ProjectManager.HalAssertFull=false
PD5.Signal=USART2_TX ProjectManager.HeapSize=0x200
PD9.Signal=USART3_RX ProjectManager.KeepUserCode=true
ProjectManager.DeletePrevious=true ProjectManager.LastFirmware=true
RCC.UART8Freq_Value=54000000 ProjectManager.LibraryCopy=0
PB14.Locked=true ProjectManager.MainLocation=Src
RCC.APB1CLKDivider=RCC_HCLK_DIV4 ProjectManager.NoMain=false
RCC.LCDTFToutputFreq_Value=96000000 ProjectManager.PreviousToolchain=
boardIOC=true ProjectManager.ProjectBuild=false
PD6.Mode=Asynchronous ProjectManager.ProjectFileName=f7.ioc
NVIC.USART2_IRQn=true\:0\:0\:false\:false\:true\:true\:true ProjectManager.ProjectName=f7
RCC.FamilyName=M ProjectManager.StackSize=0x400
PD8.GPIO_Label=STLK_RX [STM32F103CBT6_PA3] ProjectManager.TargetToolchain=Makefile
RCC.WatchDogFreq_Value=32000 ProjectManager.ToolChainLocation=
PA13.Signal=SYS_JTMS-SWDIO ProjectManager.UnderRoot=false
PA15.Locked=true ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-LL-true,2-SystemClock_Config-RCC-false-LL-false,3-MX_USART2_UART_Init-USART2-false-LL-true,4-MX_USART3_UART_Init-USART3-false-LL-true,5-MX_CORTEX_M7_Init-CORTEX_M7-false-LL-true
ProjectManager.TargetToolchain=Makefile RCC.48MHZClocksFreq_Value=24000000
RCC.USART6Freq_Value=108000000 RCC.ADC12outputFreq_Value=72000000
PB7.GPIOParameters=GPIO_Label RCC.ADC34outputFreq_Value=72000000
RCC.USBFreq_Value=144000000 RCC.AHBFreq_Value=216000000
RCC.PLLSAIoutputFreq_Value=192000000 RCC.APB1CLKDivider=RCC_HCLK_DIV4
PD7.Locked=true RCC.APB1Freq_Value=54000000
PD8.Mode=Asynchronous RCC.APB1TimFreq_Value=108000000
RCC.VCOI2SOutputFreq_Value=384000000 RCC.APB2CLKDivider=RCC_HCLK_DIV2
PB14.Signal=GPIO_Output RCC.APB2Freq_Value=108000000
PG6.GPIOParameters=GPIO_Label RCC.APB2TimFreq_Value=216000000
PD7.PinState=GPIO_PIN_SET RCC.CECFreq_Value=32786.88524590164
RCC.PLLSAIPCLKFreq_Value=192000000 RCC.CortexFreq_Value=216000000
board=NUCLEO-F746ZG RCC.EthernetFreq_Value=216000000
RCC.VCOOutputFreq_Value=432000000 RCC.FCLKCortexFreq_Value=216000000
ProjectManager.LastFirmware=true RCC.FamilyName=M
RCC.VCOOutput2Freq_Value=8000000 RCC.HCLKFreq_Value=216000000
PH0/OSC_IN.Signal=RCC_OSC_IN RCC.HSE_VALUE=8000000
RCC.APB2Freq_Value=108000000 RCC.HSI_VALUE=16000000
RCC.TIM8Freq_Value=72000000 RCC.I2C1Freq_Value=54000000
RCC.UART4Freq_Value=54000000 RCC.I2C2Freq_Value=54000000
MxCube.Version=5.6.0 RCC.I2C3Freq_Value=54000000
RCC.PRESCALERUSB=RCC_USBCLKSOURCE_PLL_DIV1_5 RCC.I2C4Freq_Value=54000000
RCC.I2C1Freq_Value=54000000 RCC.I2SClocksFreq_Value=48000000
RCC.PLLI2SPCLKFreq_Value=192000000 RCC.I2SFreq_Value=192000000
PC13.GPIOParameters=GPIO_Label RCC.IPParameters=48MHZClocksFreq_Value,ADC12outputFreq_Value,ADC34outputFreq_Value,AHBFreq_Value,APB1CLKDivider,APB1Freq_Value,APB1TimFreq_Value,APB2CLKDivider,APB2Freq_Value,APB2TimFreq_Value,CECFreq_Value,CortexFreq_Value,EthernetFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2C1Freq_Value,I2C2Freq_Value,I2C3Freq_Value,I2C4Freq_Value,I2SClocksFreq_Value,I2SFreq_Value,LCDTFToutputFreq_Value,LPTIM1Freq_Value,LSI_VALUE,MCO1PinFreq_Value,MCO2PinFreq_Value,MCOFreq_Value,PLLCLKFreq_Value,PLLI2SPCLKFreq_Value,PLLI2SQCLKFreq_Value,PLLI2SRCLKFreq_Value,PLLI2SRoutputFreq_Value,PLLM,PLLMCOFreq_Value,PLLMUL,PLLN,PLLQ,PLLQCLKFreq_Value,PLLQoutputFreq_Value,PLLSAIPCLKFreq_Value,PLLSAIQCLKFreq_Value,PLLSAIRCLKFreq_Value,PLLSAIoutputFreq_Value,PLLSourceVirtual,PRESCALERUSB,RNGFreq_Value,RTCFreq_Value,RTCHSEDivFreq_Value,SAI1Freq_Value,SAI2Freq_Value,SDMMCFreq_Value,SPDIFRXFreq_Value,SYSCLKFreq_VALUE,SYSCLKSource,SYSCLKSourceVirtual,TIM15Freq_Value,TIM16Freq_Value,TIM17Freq_Value,TIM1Freq_Value,TIM20Freq_Value,TIM2Freq_Value,TIM3Freq_Value,TIM8Freq_Value,UART4Freq_Value,UART5Freq_Value,UART7Freq_Value,UART8Freq_Value,USART1Freq_Value,USART2Freq_Value,USART3Freq_Value,USART6Freq_Value,USBFreq_Value,VCOI2SOutputFreq_Value,VCOInputFreq_Value,VCOOutput2Freq_Value,VCOOutputFreq_Value,VCOSAIOutputFreq_Value,VcooutputI2S,WatchDogFreq_Value
PG7.GPIO_Label=USB_OverCurrent [STMPS2151STR_FAULT] RCC.LCDTFToutputFreq_Value=96000000
RCC.RNGFreq_Value=144000000 RCC.LPTIM1Freq_Value=54000000
VP_SYS_VS_Systick.Mode=SysTick RCC.LSI_VALUE=32000
RCC.EthernetFreq_Value=216000000 RCC.MCO1PinFreq_Value=16000000
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:true\:false RCC.MCO2PinFreq_Value=216000000
RCC.UART5Freq_Value=54000000 RCC.MCOFreq_Value=72000000
PA13.Mode=Serial_Wire RCC.PLLCLKFreq_Value=216000000
ProjectManager.FreePins=false RCC.PLLI2SPCLKFreq_Value=192000000
RCC.IPParameters=48MHZClocksFreq_Value,ADC12outputFreq_Value,ADC34outputFreq_Value,AHBFreq_Value,APB1CLKDivider,APB1Freq_Value,APB1TimFreq_Value,APB2CLKDivider,APB2Freq_Value,APB2TimFreq_Value,CECFreq_Value,CortexFreq_Value,EthernetFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2C1Freq_Value,I2C2Freq_Value,I2C3Freq_Value,I2C4Freq_Value,I2SClocksFreq_Value,I2SFreq_Value,LCDTFToutputFreq_Value,LPTIM1Freq_Value,LSI_VALUE,MCO1PinFreq_Value,MCO2PinFreq_Value,MCOFreq_Value,PLLCLKFreq_Value,PLLI2SPCLKFreq_Value,PLLI2SQCLKFreq_Value,PLLI2SRCLKFreq_Value,PLLI2SRoutputFreq_Value,PLLM,PLLMCOFreq_Value,PLLMUL,PLLN,PLLQ,PLLQCLKFreq_Value,PLLQoutputFreq_Value,PLLSAIPCLKFreq_Value,PLLSAIQCLKFreq_Value,PLLSAIRCLKFreq_Value,PLLSAIoutputFreq_Value,PLLSourceVirtual,PRESCALERUSB,RNGFreq_Value,RTCFreq_Value,RTCHSEDivFreq_Value,SAI1Freq_Value,SAI2Freq_Value,SDMMCFreq_Value,SPDIFRXFreq_Value,SYSCLKFreq_VALUE,SYSCLKSource,SYSCLKSourceVirtual,TIM15Freq_Value,TIM16Freq_Value,TIM17Freq_Value,TIM1Freq_Value,TIM20Freq_Value,TIM2Freq_Value,TIM3Freq_Value,TIM8Freq_Value,UART4Freq_Value,UART5Freq_Value,UART7Freq_Value,UART8Freq_Value,USART1Freq_Value,USART2Freq_Value,USART3Freq_Value,USART6Freq_Value,USBFreq_Value,VCOI2SOutputFreq_Value,VCOInputFreq_Value,VCOOutput2Freq_Value,VCOOutputFreq_Value,VCOSAIOutputFreq_Value,VcooutputI2S,WatchDogFreq_Value RCC.PLLI2SQCLKFreq_Value=192000000
ProjectManager.AskForMigrate=true RCC.PLLI2SRCLKFreq_Value=192000000
Mcu.Name=STM32F746ZGTx RCC.PLLI2SRoutputFreq_Value=192000000
RCC.PLLI2SQCLKFreq_Value=192000000 RCC.PLLM=4
RCC.RTCHSEDivFreq_Value=4000000 RCC.PLLMCOFreq_Value=72000000
PA13.GPIO_Label=TMS RCC.PLLMUL=RCC_PLL_MUL9
ProjectManager.UnderRoot=false RCC.PLLN=216
ProjectManager.CoupleFile=false RCC.PLLQ=3
RCC.48MHZClocksFreq_Value=24000000 RCC.PLLQCLKFreq_Value=144000000
PB4.Locked=true RCC.PLLQoutputFreq_Value=144000000
PB3.Signal=SYS_JTDO-SWO RCC.PLLSAIPCLKFreq_Value=192000000
RCC.SYSCLKFreq_VALUE=216000000 RCC.PLLSAIQCLKFreq_Value=192000000
Mcu.Pin20=VP_SYS_VS_Systick RCC.PLLSAIRCLKFreq_Value=192000000
NVIC.ForceEnableDMAVector=true RCC.PLLSAIoutputFreq_Value=192000000
KeepUserPlacement=true RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE
PA14.GPIOParameters=GPIO_Label RCC.PRESCALERUSB=RCC_USBCLKSOURCE_PLL_DIV1_5
PC14/OSC32_IN.Locked=true RCC.RNGFreq_Value=144000000
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:true\:false RCC.RTCFreq_Value=32000
PA13.Locked=true RCC.RTCHSEDivFreq_Value=4000000
PC15/OSC32_OUT.Mode=LSE-External-Oscillator RCC.SAI1Freq_Value=192000000
ProjectManager.CompilerOptimize=6 RCC.SAI2Freq_Value=192000000
PA14.Signal=SYS_JTCK-SWCLK RCC.SDMMCFreq_Value=216000000
ProjectManager.HeapSize=0x200 RCC.SPDIFRXFreq_Value=192000000
Mcu.Pin15=PD6 RCC.SYSCLKFreq_VALUE=216000000
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:true\:false RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
Mcu.Pin16=PD7 RCC.SYSCLKSourceVirtual=RCC_SYSCLKSOURCE_PLLCLK
Mcu.Pin13=PA15 RCC.TIM15Freq_Value=72000000
Mcu.Pin14=PD5 RCC.TIM16Freq_Value=72000000
Mcu.Pin19=PB7 RCC.TIM17Freq_Value=72000000
RCC.TIM20Freq_Value=72000000 RCC.TIM1Freq_Value=72000000
ProjectManager.ComputerToolchain=false RCC.TIM20Freq_Value=72000000
Mcu.Pin17=PB3 RCC.TIM2Freq_Value=72000000
RCC.HSI_VALUE=16000000 RCC.TIM3Freq_Value=72000000
Mcu.Pin18=PB4 RCC.TIM8Freq_Value=72000000
RCC.TIM3Freq_Value=72000000 RCC.UART4Freq_Value=54000000
PH0/OSC_IN.GPIO_Label=MCO [STM32F103CBT6_PA8] RCC.UART5Freq_Value=54000000
RCC.PLLQ=3 RCC.UART7Freq_Value=54000000
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 RCC.UART8Freq_Value=54000000
Mcu.Pin11=PA13 RCC.USART1Freq_Value=108000000
Mcu.Pin12=PA14 RCC.USART2Freq_Value=54000000
RCC.PLLM=4 RCC.USART3Freq_Value=54000000
RCC.PLLN=216 RCC.USART6Freq_Value=108000000
Mcu.Pin10=PG7 RCC.USBFreq_Value=144000000
PB7.Locked=true RCC.VCOI2SOutputFreq_Value=384000000
PC15/OSC32_OUT.Signal=RCC_OSC32_OUT RCC.VCOInputFreq_Value=2000000
RCC.I2C2Freq_Value=54000000 RCC.VCOOutput2Freq_Value=8000000
PD9.Locked=true RCC.VCOOutputFreq_Value=432000000
RCC.APB1Freq_Value=54000000 RCC.VCOSAIOutputFreq_Value=384000000
PB0.Signal=GPIO_Output RCC.VcooutputI2S=48000000
ProjectManager.DeviceId=STM32F746ZGTx RCC.WatchDogFreq_Value=32000
PG7.GPIOParameters=GPIO_Label SH.GPXTI13.0=GPIO_EXTI13
PD7.GPIOParameters=GPIO_Speed,PinState,GPIO_Label SH.GPXTI13.ConfNb=1
ProjectManager.LibraryCopy=0 USART2.IPParameters=VirtualMode-Asynchronous
PH0/OSC_IN.GPIOParameters=GPIO_Label USART2.VirtualMode-Asynchronous=VM_ASYNC
USART3.IPParameters=VirtualMode-Asynchronous
USART3.VirtualMode-Asynchronous=VM_ASYNC
VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
board=NUCLEO-F746ZG
boardIOC=true
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment