stm32上电复位启动流程
时间: 2024-01-20 11:14:22 浏览: 28
STM32上电复位启动流程如下:
1. 当STM32芯片上电或者复位时,系统会自动将CPU复位到内部的预定义地址0x0800 0000处,这个地址是存放向量表的起始地址。
2. 向量表是一段预定义的内存区域,其中包含了一些重要的中断服务程序的入口地址,例如复位中断、NMI中断、硬件异常中断、SysTick中断等。在向量表中,每个中断服务程序的入口地址占用4个字节,按照一定的顺序排列。
3. 当CPU复位到0x0800 0000处时,会自动跳转到向量表的第一个入口处,也就是复位中断服务程序的入口地址。在复位中断服务程序中,会进行一些初始化操作,例如初始化堆栈指针、初始化BSS段、初始化数据段等。
4. 复位中断服务程序执行完毕后,会跳转到main函数的入口地址,开始执行用户程序。
相关问题
STM32MP157启动流程
STM32MP157的启动流程可以根据引用的内容进行说明。首先,在复位后,STM32MP157内部的两个A核会执行相同的ROM Code程序,这个程序只在Core0上运行。ROM Code会判断是否在第一个核上运行、是否启动M核、是否RMA、是否ENGI,但对于我们来说这些并不重要,我们只需要关注冷启动部分。
在冷启动部分,STM32MP157有两种启动方式:从USB OTG接口启动和串口启动。对于USB OTG接口启动,我们可以使用STM32CubeProg软件下载程序。而对于串口启动,具体的步骤可以根据具体的实际需求来确定。
综上所述,STM32MP157的启动流程可以简单概括为:复位后,两个A核执行相同的ROM Code程序,其中ROM Code判断是否在第一个核上运行,并且支持从USB OTG接口启动和串口启动两种方式。
stm32f103启动流程
STM32F103是一款基于ARM Cortex-M3内核的低功耗微控制器。它具有高性能、低功耗、高可靠性等特点,可广泛应用于智能家电、工业控制、汽车电子等领域。在开始编写STM32F103的应用程序之前,了解STM32F103启动流程是非常重要的。
STM32F103启动流程分为3个阶段:
1. 外部复位阶段
当STM32F103微控制器上电后,复位电路会拉低微控制器的复位引脚,使微控制器进入外部复位阶段。在此阶段,所有的寄存器和存储器都会被初始化为默认值。
2. 内部复位阶段
在外部复位阶段完成后,微控制器进入内部复位阶段。在此阶段,内核启动代码会初始化操作系统芯片的内部器件,如时钟系统、中断控制器、GPIO、外设等,为应用程序的运行做准备。
3. 应用程序执行阶段
在内部复位阶段完成后,STM32F103就进入了应用程序执行阶段。在此阶段,程序代码已经准备就绪,可以开始执行应用程序。
在STM32F103的启动过程中,时钟系统的配置是非常关键的。时钟系统的配置包括选择内部或外部时钟源、配置PLL倍频器和分频器等。只有正确配置了时钟系统,才能保证微控制器的正常工作和稳定性。
总之,了解STM32F103的启动流程和时钟系统配置是非常重要的。只有掌握了这些知识,才能更加高效地编写STM32F103的应用程序。