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

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

[复制链接]
STMCU小助手 发布时间:2021-11-26 17:00
闪存存储器由主存储块、信息块、闪存存储器接口寄存器组成:
* z4 p) t' Q3 S: f1、主存储器:
* V/ Q1 k7 J, O+ Z1 K# G用来存放代码和数据常数(如 const 类型的数据)。起始地址是 0X08000000, B0,B1都接GND的时候就是从0x08000000开始运行代码的。' H& i( X( ~% R( K
2、信息块:, v6 `% l, P# j  I5 F+ G/ ?
系统存储器,用于存储 ST 自带的启动程序,串口下载代码,当B0接V3.3,B1接GND时,运行的就是这部分代码。
- h( r! t  E8 J& w+ _1 D选择字节,则一般用于配置写保护、读保护等功能。6 l6 _1 ~" x; ~! `
对于小容量、中容量和大容量的产品而言,可以通过 USART1接口启用自举程序。
5 K( t' d0 O5 S% `% M对于互联型产品而言,可以通过以下某个接口启用自举程序: USART1 、 USART2( 重映像的) 、 CAN2( 重映像的 ) 或 USB OTG 全速接口的设备模式 ( 通过设备固件更新 DFU 协议 ) 。
8 S( X& p2 s( Q% d3、闪存存储器接口寄存器:
* e! o! e% W$ s6 N9 e该部分用于控制闪存读写等,是整个闪存模块的控制机构。
) f' |$ F9 k2 t
  m& k! E9 D. W6 l/ w) e- t: g# V: [# v- \  A0 E, d, p
启动模式和区域:
5 @& G* B& {* t0 d& D9 Y! o" M5 Q* V" c) D
20200409111809438.png

3 Y/ I  t5 f& I1 Y2 s6 m) M8 \7 v$ V& f1 I
从主闪存存储器启动:主闪存存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(0x0800 0000)访问它,即闪存存储器的内容可以在两个地址区域访问,0x0000000或0x0800 0000。0 z. }8 t, p) i# p, v
从系统存储器启动:系统存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(互联型产品原有地址为0x1FFF B000,其它产品原有地址为0x1FFF F000)访问它。
, ~' L* ?8 v# t# c' p( v从内置SRAM启动:只能在0x2000 0000开始的地址区访问SRAM。
/ P- s. {+ ^1 x
5 J& \$ V# q: B) x+ U5 Z' k# x- q; A─ 主存储块容量:
2 C; L) W' ~, a小容量产品主存储块最大为4K×64位,每个存储块划分为32个1K字节的页(见表2)。
5 R* F: h3 B3 J中容量产品主存储块最大为16K×64位,每个存储块划分为128个1K字节的页(见表3)。+ ?1 C) \$ O" m3 i( x9 q
大容量产品主存储块最大为64K×64位,每个存储块划分为256个2K字节的页(见表4)。5 \0 V4 E- n! m* Q- v
互联型产品主存储块最大为32K×64位,每个存储块划分为128个2K字节的页(见表5)。" z( C) J+ G+ M  s! |* h
+ Z# S0 ?/ y/ y- Q& I
─ 信息块容量:/ [* Y$ ?! N$ k0 w3 Z  M
互联型产品有 2360 × 64 位 ( 见表 5) 。* r2 S* m4 m$ u) X) h; l- h
其它产品有 258 × 64 位 ( 见表 2 30/754 、表3 、表 4) 。
: R# V  ^% i9 W) ~/ @
5 i: \; k# i, q; b; B─闪存存储器接口的特性为:
' J# K6 r# \' g: Q- x● 带预取缓冲器的读接口 ( 每字为 2 × 64 位 )
# w7 t5 D* p) F" a) Z0 K' d● 选择字节加载器/ f5 [6 m& e+ \7 `: `
● 闪存编程 / 擦除操作2 O! c, A" Y; K  v
● 访问 / 写保护
* ~0 F: g6 h2 v+ }) P5 O+ m: i- P$ P+ g8 Q
─编程和擦除闪存:" C; t. @; ]  O' @' [8 U5 H
闪存编程一次可以写入16位(半字)。
5 y6 h( U4 `- s. y8 D闪存擦除操作可以按页面擦除或完全擦除(全擦除)。全擦除不影响信息块。; P6 _! A, z/ _5 i5 X4 ^& q
为了确保不发生过度编程, 闪存编程和擦除控制器块是由一个固定的时钟控制的。4 m) s! ^) o4 q. \: R! x
写操作(编程或擦除)结束时可以触发中断。仅当闪存控制器接口时钟开启时,此中断可以用来从WFI模式退出。. V* p) j) x. e

8 ]* h. M$ }  A/ b' F, C, m
- c4 m; ^2 E) v1 n; w6 O. L附表:; q) Q8 X& i( O# \& M  k

+ ^. I0 M3 H5 D# _2 s. b0 s
2020040910444627.png

( g* i4 N5 }# E/ X/ h; P# C6 @( \5 i1 q3 _
2020040910452128.png
& l4 s( D1 B7 ?  z
) {1 {& u6 N( i; x
20200409104600877.png
) X) m, D$ c7 [! p" U2 y

2 J0 P$ `5 o% t# f. m9 y
20200409104624480.png

+ X5 h- l0 w: c  `) N0 z1 m2 `
- Z3 }: k. W$ k8 F- u1 e# h: h6 y: z

! X* l" t6 I" ~5 Z+ F9 d
: h6 _' \9 v  N. i
  G' d% X, O. J
  N& u1 W" v3 ~$ k1 U$ r
9 Y; z9 i! \0 c% ?# r
# h: r) w1 @3 m( \" _( j& t# }8 [" ?$ A! @$ w
7 s2 U' E$ y+ f: U7 J9 h8 b
收藏 评论0 发布时间:2021-11-26 17:00

举报

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