STM32F40xxx 与 STM32F41xxx Flash结构详解

发布者:hzx312895379最新更新时间:2022-01-13 来源: eefocus关键字:Flash结构 手机看文章 扫描二维码
随时随地手机看文章

硬件平台:STM32F4 DISCOVERY开发板 型号:MB997A或MB997C
主芯片型号:STM32F405xx, STM32F407xx, STM32F415xx, 或 STM32F417xx


主要参考文档:

(1)PM0081 STM32F40xxx and STM32F41xxx Flash programming manual.pdf
(2)STM32F407 datasheet.pdf

 

做为嵌入式方面的开发人员,拿到一个芯片后,我们首先看它的参数指标,有多少多少容量的RAM,多少多少容量的Flash。当然,前提是芯片自带这两个模块。

今天我们只研究Flash的结构:)

(一)声明
STM32F405xx, STM32F407xx, STM32F415xx, 和 STM32F417xx的Flash模块都是一样的,所以,我们在文章后面统一以STM32F4代表它们。

(二)概览
首先来一张概览图吧

 

NewImage

2.1 Main memory
Main memory部分各个Sector相加最后正合适等于1024Kbyte,这也是与文档开头说的Capacity up to 1 Mbyte相符的。在这个区域里主要是存储我们用户编写的程序,这里你可能看到了,该片存储区地址是从0x08000000开始的,这也就是为什么我们在使用ST-Link2烧写程序的时候,要规定起始地址是0x08000000的原因了。

2.2 System memory
System memory区域是系统保留区,用来在“System memory boot”模式下启动芯片。存储的是一段特殊的程序,叫做bootloader,通过运行此段区域里的程序,可以对Main memory进行重新烧写。举个栗子,如果我们选择以System memory boot模式启动,同时插上了带有系统固件的U盘,那么经过配置后,bootloader就可以读出U盘里的固件,烧写到Main memory区域里去,怎么样,方便吧!也就是说,给芯片重新烧写固件,可以通过USB OTG FS的方式!神奇的功能:)
2.3 OTP area

 

201403031546

这段区域更是神奇,OTP是One-time programmable的缩写,从字面上可以看出来,此段区域是一次性编程区。但是,机智的人类也有犯错误的时候,万一写错了怎么办!ST公司考虑到这一点,在从0x1FFF7A00地址开始的16个字节是带有“锁”功能的字节,当你确定OTPx区域写进去的数据确实没有错误了,你就可以对LOCKBx地址写入0x00,从此OTPx区域就没法更改了。


2.4 Option bytes
官方文档应该写错了吧,0x1FFFC000-0x1FFFC00F怎么会是16Kbytes呢?应该是16bytes才对吧。

 

    想要具体了解的朋友们,可以参考STM32F407 datasheet.pdf中3.1-3.9节的详细介绍:)


关键字:Flash结构 引用地址:STM32F40xxx 与 STM32F41xxx Flash结构详解

上一篇:在Mac OS X中使用VIM开发STM32(2)
下一篇:在Mac OS X中使用VIM开发STM32(1)

推荐帖子

求海思车载DVR方案
各位大神,现需要一套海思3520车载DVR方案,4/6/8路录像,带4G传输,有渠道的请联系我,可以合作。18823337249求海思车载DVR方案顶一下支持一下求可以与我联系,,, 如方便请加我微信,谢谢了
zoezou 汽车电子
ARM知识分享-i.MX6Q GPIO复用修改方法
平台:OKMX6Q-S2系统:Linux内核版本:Linux-3.0.35i.MX6QGPIO复用修改方法,验证平台为飞凌嵌入式OKMX6Q-S2开发板,基于ARMCorte-A9架构,i.MX6Q四核处理器,其它平台可参考使用。本次修改将原SD卡功能占用的部分引脚释放,复用为GPIO。具体的GPIO号需要参考i.MX6CPU手册(IMX6DQRM.pdf)的第四章,Chapter4ExternalSignalsandPinMultiplexing。i
forlinx2013 嵌入式系统
关于SD卡的读写速度
不知道大家有没有做过SD的,它的最大读写速度怎么样呢,我在用读一个10G的SD卡时需要的时间特别长!关于SD卡的读写速度看你用什么读了.单片机?ARM?FPGA,读卡器??跟你读写的时序速度有关吧?最好做成文件系统,象FAT32这样的,如果一个字节字节的读,速度可想而知,而且你也没必要把10G的数据全部读出来,再说你也没那么大内存,当你需要什么数据的时候才去读取分,这样也做是不是好些??10G的SD卡读写需要的时间比如:用STM32来说吧!它的速度能到多少呢?
daicheng 嵌入式系统
MSP430之解错篇
【记住】接口别忘设置!1、设置IAR软件Tab键缩进字符个数方法:Tools-Options-Editor-TabSize,按习惯改后面数字.2、Error:UndefinedexternalLcdInitreferredinmain(E:\MSP430\UDP\Debug\Obj\main.r43)原因:工程中有多个.c文件,但不在工程中.解决:把.c文件加到工程里。3、Error:EntryReadingDatainmoduleD
fish001 微控制器 MCU
求串联型稳压电路的工作原理、有图
图就是这个、求大神帮忙分析下、这图的工作原理!!求串联型稳压电路的工作原理、有图这种电路虽然简单,但要说原理,也不说一句话能说完的。给个地址,,好好看看http://wenku.baidu.com/view/08ac34d149649b6648d7472e.html楼主电路是错的,Q3的CE反了,另外滤波电容的容量太小。哈哈,是啊,滤波电容100pF,太小了。是不是楼主忘了修改参数标注?
醒在寂静的夜 电源技术
EEWORLD大学堂----熟练掌握高压 MOSFET/IGBT 栅极驱动设计
作为一名DIY电子爱好者,好的资料与资源就是最好的良师,感谢。
hi5 电源技术
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved