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函数(用户程序)。

相关推荐
不悔哥19 小时前
开源OV-Watch:怎么做一个智能手表
单片机·开源·嵌入式
XiHongShi201619 小时前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
优信电子20 小时前
AIT1001 非接触式红外测温模块 STM32 驱动开发实战:从引脚到代码全解析
stm32·嵌入式·温度传感器·红外测温·非接触式测温·ait1001
深圳老胡21 小时前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
wuyk5551 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
女神下凡1 天前
嵌入式设计的各种存储芯片的硬件/软件设计规范,非常全面。
arm开发·单片机·嵌入式硬件
梅梅9661 天前
一款mipi转lvds的lcd调试(LT8912B)
单片机·计算机外设·电脑·显示器·pd芯片
开发笔记-阿牛1 天前
蓝牙音乐灯拆解,又一次拆到蓝牙音乐灯芯片CK6865L
人工智能·单片机·嵌入式硬件·音视频·音频
从零开始的嵌入式之旅1 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
恒锐丰科技林技术员1 天前
EG1164 高压大电流升压同步整流芯片解析
经验分享·嵌入式硬件·硬件工程