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

【经验分享】STM32F1内部FLASH组成和访问

[复制链接]
STMCU小助手 发布时间:2021-11-26 17:00
闪存存储器由主存储块、信息块、闪存存储器接口寄存器组成:
; F* s' R1 @1 I9 P; G& s: x0 a1、主存储器:
" I. G, [! L5 V. w: B! ?用来存放代码和数据常数(如 const 类型的数据)。起始地址是 0X08000000, B0,B1都接GND的时候就是从0x08000000开始运行代码的。
  ^) y6 j- A) |. l2、信息块:8 H! J. _+ k: z/ r$ l2 o# q/ c
系统存储器,用于存储 ST 自带的启动程序,串口下载代码,当B0接V3.3,B1接GND时,运行的就是这部分代码。
6 ?/ N+ n/ a/ Q% f9 B选择字节,则一般用于配置写保护、读保护等功能。
( a% m* Z: [/ V  Z对于小容量、中容量和大容量的产品而言,可以通过 USART1接口启用自举程序。7 ^+ \, k8 ^7 ?& }/ v
对于互联型产品而言,可以通过以下某个接口启用自举程序: USART1 、 USART2( 重映像的) 、 CAN2( 重映像的 ) 或 USB OTG 全速接口的设备模式 ( 通过设备固件更新 DFU 协议 ) 。
- u* M) j/ m/ V! o) g& C# I! ^3、闪存存储器接口寄存器:
3 n9 Y1 T4 I2 ~6 e0 f& a该部分用于控制闪存读写等,是整个闪存模块的控制机构。
; {7 u4 O) F# K( m# B3 ]
* |% E! X4 L" ]" B
8 b0 |  l) B  S3 i4 k启动模式和区域:
3 ?  R+ s/ R& T3 w+ m
( v$ A8 n% R, @0 q5 \$ u
20200409111809438.png

, t# `7 a  X$ i  r4 ?- j0 X
* J9 }4 ]" i- a- Z5 C从主闪存存储器启动:主闪存存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(0x0800 0000)访问它,即闪存存储器的内容可以在两个地址区域访问,0x0000000或0x0800 0000。
. W4 h* t& E- y4 c9 h从系统存储器启动:系统存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(互联型产品原有地址为0x1FFF B000,其它产品原有地址为0x1FFF F000)访问它。( g2 l1 D$ k) j
从内置SRAM启动:只能在0x2000 0000开始的地址区访问SRAM。
+ g8 G* I- A, c
! ]+ T+ b3 L" N' _+ ^─ 主存储块容量:
* H1 h  _- n: F: S  f小容量产品主存储块最大为4K×64位,每个存储块划分为32个1K字节的页(见表2)。$ E8 M) t6 e+ T
中容量产品主存储块最大为16K×64位,每个存储块划分为128个1K字节的页(见表3)。
5 w1 P0 q/ L' u; i  {大容量产品主存储块最大为64K×64位,每个存储块划分为256个2K字节的页(见表4)。
8 Y) y3 \: b+ A1 L. k/ v6 G互联型产品主存储块最大为32K×64位,每个存储块划分为128个2K字节的页(见表5)。
6 G* T% N" p/ f* ?, x) ^& [5 U' g! B- U) c; B
─ 信息块容量:
) T& s( `# P, m互联型产品有 2360 × 64 位 ( 见表 5) 。3 F8 ^- g/ {6 d1 C2 E
其它产品有 258 × 64 位 ( 见表 2 30/754 、表3 、表 4) 。  M* |& D3 k" \2 j  \- f

/ I( t4 p( Y$ b% B─闪存存储器接口的特性为:
, X1 G/ }  D+ X● 带预取缓冲器的读接口 ( 每字为 2 × 64 位 )" y/ V! f2 ?: q/ O
● 选择字节加载器6 q. }8 Y; X4 ]& D) a
● 闪存编程 / 擦除操作
  f4 u# T4 L4 B( ?4 U● 访问 / 写保护5 y5 O: V& E0 v) V6 O! M3 K( ]
" a+ u% k2 C2 Z  `2 P3 h/ x
─编程和擦除闪存:+ ?# {$ B9 j/ I( O% {4 e+ M
闪存编程一次可以写入16位(半字)。+ J0 G' f6 {" m$ V, w: X
闪存擦除操作可以按页面擦除或完全擦除(全擦除)。全擦除不影响信息块。0 p0 t7 v8 u8 ]' R. P+ q1 E
为了确保不发生过度编程, 闪存编程和擦除控制器块是由一个固定的时钟控制的。5 T  o6 Q4 z! S# e4 |
写操作(编程或擦除)结束时可以触发中断。仅当闪存控制器接口时钟开启时,此中断可以用来从WFI模式退出。
; e4 S" B6 h+ f2 J
0 j8 v9 F3 E# B5 q8 G0 U
. t& A+ f: W, _6 o, U7 K附表:! a( y( i) X1 y9 u9 U
. X8 g* R, v$ N& P6 J1 H
2020040910444627.png
, H# g/ Q4 a0 z2 X( b
- h, o! ~1 A! e# B
2020040910452128.png
5 D% o7 Q. a. ]* d& X/ ~

7 D- l! O$ Y. z6 ?8 K+ {0 B
20200409104600877.png

8 U8 ^) [7 p8 g; u  [; O7 h0 R1 R+ o# x+ p( V
20200409104624480.png
2 [, S5 ^& R) y- l: k

' e) Z7 u5 k7 e2 O% g# s. _7 G0 m0 }0 S

1 x3 {# t# K5 ^) ]& D- E! H- t8 r5 ^, J* e7 T

0 \: a* `/ o; U" g) W' n6 M; H; [, b4 c7 }2 P
# P$ _) W% ]0 Z' k. i$ ?
: _8 a9 e& S8 n/ Z( D, z% S
" V. h8 o- c; `& Q9 d

! A/ G& k: _6 Y5 k- a
收藏 评论0 发布时间:2021-11-26 17:00

举报

0个回答

所属标签

相似技术帖

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