STM32启动解析

启动方式对的不同下载模式

STM32可以通过BOOT引脚的配置,来选择不同的启动模式------对应不同的下载方式。

仿真器下载------ 内部FLASH的启动方式

串口下载 ------ 系统存储器的启动方式

内部SRAM一般不用,不讲

启动过程

以内部FLASH的启动方式为例:

启动文件用汇编编写,是系统上电复位后第一个执行的程序。启动文件主要做了以下工作:

当芯片上电后,会读取0x00000000 地址的值赋值给栈指针 MSP,读取0x00000004 地址的值赋值给程序指针 PC。但因为采样到 BOOT0 引脚为低电平时,0x000000000x00000004 地址被映射到内部 FLASH 的首地址 0x08000000 和 0x08000004。完成这两个操作后,内核就可以开始从 PC 指向的地址中读取指令执行了。

在.map文件里可以看到中断向量表的地址就是0x08000000 。

0x08000004存放的就是Reset_Handler函数的地址,重新就会从Reset_Handler函数开始执行。

可以看到,在Reset_Handler函数里完成了SystemInit函数(系统时钟)的调用,以及调用main函数(用户程序)。

相关推荐
郦7771 小时前
MO+内核32位单片机的PY32F030单片机开发板
单片机·嵌入式硬件
正旺单片机3 小时前
单片机3种按键程序消抖方法
c语言·单片机·嵌入式硬件
几道之旅3 小时前
零基础RT-thread第四节:电容按键
stm32
深圳市尚想信息技术有限公司3 小时前
功耗高?加密弱?爱普特APT32F1023H8S6单片机 2μA待机+AES硬件加密破局
单片机·嵌入式硬件·apt·存储芯片·爱普特
楼台的春风8 小时前
【Linux驱动开发 ---- 4.1_sysfs 详解】
linux·运维·c语言·数据库·人工智能·驱动开发·嵌入式硬件
国科安芯13 小时前
AS32A601与ASM1042芯片在电力系统自动化监控中的应用效能分析
单片机·物联网·自动化
才鲸嵌入式18 小时前
C++相比于C语言增加了哪些概念?
c语言·c++·单片机·嵌入式·arm·面向对象·软件
dujunqiu21 小时前
S32DS上进行S32K328的时钟配置,LPUART时钟配置步骤详解
单片机·mcu
Peter_Deng.1 天前
单片机 - STM32F407 ADC 模式详解:单次转换、连续转换、扫描模式、非扫描模式
stm32·单片机·嵌入式硬件
iFulling1 天前
【单片机】51单片机练习代码
单片机·嵌入式硬件·51单片机