当前位置: 首页 > news >正文

2.4 STM32启动过程

目录

一,启动Flow

1.1 初始化MSP

1.2 初始化PC

1.3 设置堆栈大小

1.4初始化中断向量表

1.5 调用初始化函数(可选)

1.6 调用__main

二,Reset_Handler函数


一,启动Flow

下面是stm32在内部FLASH启动的启动建议流程图,在stm32复位到执行我们程序的main函数的过程中,最重要的就是我们的启动文件。

1.1 初始化MSP

MSP指向主堆栈的顶部,所有函数的局部变量、参数、返回值等都会存储在堆栈中。初始化MSP是为后续的程序运行准备堆栈空间。

系统复位后,处理器会从地址0x08000000处读取一个32位的值,这个值就是主堆栈指针MSP的初始值。

1.2 初始化PC

PC指向当前要执行的指令,是程序执行的控制中心。

紧随MSP之后,处理器从地址0x08000004处读取一个32位的值,这个值就是程序计数器的初始值,即程序开始执行的第一条指令的地址。


http://www.mrgr.cn/news/51704.html

相关文章:

  • 单片机输出方波
  • 数据结构——八大排序(下)
  • Python进阶知识1
  • Excel 对数据进行脱敏
  • 插件分享|沉浸式翻译
  • 【未公开0day】某某星CMSV6某某定位监控 getAlarmAppealByGuid SQL注入漏洞【附poc下载】
  • Java算术运算符 C语言的二维数组初始化
  • Python使用Selenium库实现CSDN自动化发帖
  • Redis提供了专门的命令来实现自增操作
  • 中国主要厂商3-羟基丁酸产能、销量、收入、价格和市场份额
  • Redis Geo 数据类型解析:基于 ZSET 的高效地理位置管理0708
  • flutter 使用三方/自家字体
  • python自动化办公实例(使用openpyxl、os处理统计Excel表中的数据并将其合并)
  • 业务连续性管理(Business Continuity Management, BCM)
  • 基于springboot摄影跟拍预定管理系统
  • AI 视频工具合集
  • 2024-10-16 学习人工智能的Day8
  • 物联网智能项目综述
  • 图(Java语言实现)
  • 网际报文协议ICMP及ICMP重定向实例详解2