STM32 启动文件选择

1. STM32F1xx 系列 (F1)

STM32F100xB/C:    startup_stm32f100xb.s
STM32F100xD/E:    startup_stm32f100xe.s
STM32F101x6/8/B:   startup_stm32f101x6.s, startup_stm32f101x8.s, startup_stm32f101xb.s
STM32F101xE/F/G:    startup_stm32f101xe.s, startup_stm32f101xf.s, startup_stm32f101xg.s
STM32F102x6/8:    startup_stm32f102x6.s, startup_stm32f102x8.s
STM32F103x6/7/8/B/C/D/E/G:   startup_stm32f103x6.s, startup_stm32f103x8.s, startup_stm32f103xb.s, startup_stm32f103xe.s, startup_stm32f103xd.s, startup_stm32f103xc.s, startup_stm32f103xe.s, startup_stm32f103xg.s
STM32F105xC/D/E:     startup_stm32f105xc.s, startup_stm32f105xd.s, startup_stm32f105xe.s
STM32F107xC/D/E:    startup_stm32f107xc.s, startup_stm32f107xd.s, startup_stm32f107xe.s

在选择STM32F1xx系列芯片的启动文件时,请务必确认您所使用的芯片型号,并下载对应版本的启动文件。同时,如果您使用的是非官方的开发环境或应用程序,则需要注意进行相应的适配和配置。

2. STM32F1xx 系列 (F4)

STM32F401xC/E:   startup_stm32f401xc.s, startup_stm32f401xe.s
STM32F405xx/07xx:   startup_stm32f405xx.s, startup_stm32f407xx.s
STM32F410Tx/Ex:   startup_stm32f410tx.s, startup_stm32f410ex.s
STM32F411xE:   startup_stm32f411xe.s
STM32F412Cx/CE/Fx/FxE:   startup_stm32f412cx.s, startup_stm32f412ce.s, startup_stm32f412fx.s, startup_stm32f412fxe.s
STM32F413xx/43xxx:   startup_stm32f413xx.s, startup_stm32f43xxx.s
STM32F427xx/37xx:   startup_stm32f427xx.s, startup_stm32f437xx.s
STM32F429xx/439xx:   startup_stm32f429xx.s, startup_stm32f439xx.s
STM32F446xx:   startup_stm32f446xx.s

3. 对于STM32F103R系列的芯片,应该选择startup_stm32f103xb.s启动文件

(其中xb代表此启动文件适用于此系列芯片的子系列:XL, XB, 或者 Medium density Value Line)。 在此启动文件中,已经定义了堆栈和向量表等基本信息,并提供了初始化实现的框架代码,以及其他一些必要的基础配置代码,例如以下函数:

Reset_Handler():复位中断处理程序
NMI_Handler():不可屏蔽中断处理程序
HardFault_Handler():硬故障中断处理程序
MemManage_Handler():存储管理中断处理程序
BusFault_Handler():总线故障中断处理程序
UsageFault_Handler():用法故障中断处理程序
选择正确的启动文件非常重要,因为它将直接影响芯片的初始化和操作。如果选择的启动文件有误,可能会导致无法正常启动或者其他问题出现

4.

STM32 启动文件选择_第1张图片

你可能感兴趣的:(stm32,单片机,嵌入式硬件,mcu,iot)