你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于stm32F1启动过程经验分享

[复制链接]
攻城狮Melo 发布时间:2023-5-14 18:52
STM32启动模式
4 a( [- o% T, Z1 [M3/M4/M7等内核复位后,做的第一件事:- J$ u1 `3 m! N/ j+ {$ F
1.从地址 0x0000 0000 处取出 堆栈指针 MSP 的初始值,该值为栈顶地址2.从地址 0x0000 0004 处取出程序计数器指针 PC 的初始值,该值是复位向量(Reset_Hander), Z7 ?5 {+ E) p7 h
通过BOOT0和BOOT1两个引脚的输入选择启动模式
. U3 Y8 P1 }; c/ [9 J在系统复位后,sysclk的第4个上升沿,BOOT引脚的值将被锁存(锁存后该引脚的值改变不影响已选择模式)
8 u: \9 T) `9 w( O7 @
/ [6 f/ Y1 n) P0 L, q4 }# c" y! `3 J6 o, t
U4(38()3`0{E30}3{@G28%O.png 5 e: _2 H- S6 z& p
9 e2 P+ Y# y/ Y
STM32三种启动模式对应的存储介质均是芯片内置的,它们是:5 z+ ]6 t2 p  X" R6 ]* ~$ L/ ?4 m
1.用户闪存 = 芯片内置的Flash。从用户闪存启动,这是正常的工作模式。
9 e" _! v2 P1 E6 _2 }2.SRAM = 芯片内置的RAM区,就是内存啦。从内置SRAM启动,这种模式可以用于调试
# U( _' O/ ?3 B0 p5 E# g" Z; e  N, Q3.系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。 从系统存储器启动,这种模式启动的程序功能由厂家设置。( e/ P* I$ N' @( Q2 F1 w6 ^: ^# ^

! j3 G3 s/ E) [( M
STM32启动过程(以内部flash启动为例)
5 n' \# E6 Q+ H总体概述:
5 N% ?; F7 a8 v8 w2 }) Z5 w$ s( U
3 B4 q6 K( f$ N) k7 W0 o! g7 L& D
011d8df70cb84a3b9a294c2d5865b7b2.png % @# {9 g) V0 t! N
0 J) U9 l8 d; r: H
启动文件功能$ Z: R: l( Y8 M3 T. R/ m
启动文件由汇编编写,是系统上电复位后第一个执行的程序。: E* x# Z3 v6 L, F
启动文件主要做了以下工作:* ^: N/ d2 o9 n& a
初始化堆栈指针 SP = _initial_sp (从 0x8000 0000 获取)& X, @/ ^  o. K0 J/ C3 m
初始化程序计数器指针 PC = Reset_Handler (从 0x8000 0004 获取), T' W1 @. v  X( q8 u
设置堆和栈的大小 Heap_Size(堆)、Stack_Size(栈)0 V1 z& s3 w  y3 S, `" N$ R
初始化中断向量表
4 p6 A8 O4 x  \6 Q- W9 Q配置外部 SRAM 作为数据存储器(可选)
1 b) v3 x. B. p/ Y配置系统时钟,通过调用 SystemInit 函数(可选)
) t  n* K* P/ g& L  y& ~调用 C 库中的 _main 函数初始化用户堆栈,最终调用 main 函数  {' p* F. F+ Z# P: u: ^3 r

* J/ U; n5 A8 b) c+ {# z2 w9 j$ G
启动文件常用汇编指令及说明8 v6 X, _1 `  g+ O% ]0 }( ~
/ B0 w: W, C' W5 Q- N- s
(8J0XMW2(]ELJ1~]9SU2BOD.png
4 ~2 [- u+ K8 g7 m0 x W_T5)296@FI$D{Y2HJ1ELO9.png
/ l: C5 E  O5 n2 B$ e' F* ^) @7 U& J3 K
————————————————3 E; V" ^0 W& @1 g3 ~! Z
版权声明:up up day. U; U& K7 Q; B% Z. v% W. t
如有侵权请联系删除( g( n# ]5 W& S/ d: J; E

, n/ x! B5 [& Y% P
0 M5 h# w/ V8 @% f8 A$ z5 m8 r6 Y2 _% e# E0 F. o6 U

- S9 Z) M9 J6 y7 s7 H
收藏 评论0 发布时间:2023-5-14 18:52

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版