它们看起来像是stm32的启动文件和标准文件,但我在“ GCC官方PDF”中找不到它们。
为什么可以直接使用它们
这是makefile中arm-none-eabi-gcc的标志:
# specify compiler flags
CFLAGS = -g -O2 -Wall
CFLAGS += -T$(STD_PERIPH_LIBS)/Project/STM32F10x_StdPeriph_Template/TrueSTUDIO/STM3210B-EVAL/stm32_flash.ld
CFLAGS += -mlittle-endian -mthumb -mcpu=cortex-m4 -mthumb-interwork
CFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
CFLAGS += -DSTM32F10X_MD -DUSE_STDPERIPH_DRIVER
CFLAGS += -Wl,--gc-sections
CFLAGS += -I.
CFLAGS += -I$(STD_PERIPH_LIBS)/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/
CFLAGS += -I$(STD_PERIPH_LIBS)/Libraries/CMSIS/CM3/CoreSupport
CFLAGS += -I$(STD_PERIPH_LIBS)/Libraries/STM32F10x_StdPeriph_Driver/inc
-D
是传递给GCC的预处理器标志,用于在编译之前定义某些内容。它可用于启用某些库功能甚至调试。
STM32F10X_MD
并USE_STDPERIPH_DRIVER
启用部分包含的库。它是中密度设备库的STM32F10部分,并允许使用标准外围设备库。
请注意,不再支持SPL,您应该升级到HAL或HAL LL。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句