历史上的今天
返回首页

历史上的今天

今天是:2024年12月27日(星期五)

正在发生

2021年12月27日 | STM32F40xxx 与 STM32F41xxx Flash结构详解

2021-12-27 来源:eefocus

硬件平台: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节的详细介绍:)


推荐阅读

史海拾趣

酷宅(Coolkit)公司的发展小趣事

酷宅科技在追求经济效益的同时,也积极履行社会责任。公司关注环保和可持续发展问题,推动绿色制造和绿色消费。在产品设计和生产过程中,酷宅科技注重节能减排和资源循环利用,努力降低对环境的影响。此外,公司还积极参与公益事业和社会活动,为社会做出积极贡献。

以上五个故事框架涵盖了酷宅科技在电子行业中的发展历程、市场策略、技术创新和社会责任等方面。每个故事都基于事实进行描述,旨在客观展现酷宅科技在电子行业中的发展轨迹和贡献。

Goodwork Semiconductor ( GW )公司的发展小趣事
根据负载的电压和功率要求选择合适的稳压器。
FOTEK公司的发展小趣事

福禄克并未止步于传统电子测试工具领域,而是积极探索新的增长点。2005年,公司推出了一系列室内空气质量(IAQ)测试工具,旨在为HVAC、建筑物维修和IAQ专业人员提供综合的精密仪器产品组合。这些产品凭借其精确性、可靠性和易用性,迅速获得了市场的认可。此后,福禄克进一步拓展至生物医学领域,推出了电气安全性测试仪、病患模拟器等先进设备,在生物医学测试和模拟产品领域取得了领先地位。

Accetek公司的发展小趣事

随着电子技术的飞速发展,Accetek公司意识到只有不断创新才能在市场中立于不败之地。因此,公司加大了对技术研发的投入,建立了一支高素质的研发团队。经过无数次的试验和失败,团队终于取得了重大突破,成功开发出了一种新型的数控雕刻机,具有更高的精度和更稳定的性能。这一创新成果不仅为公司赢得了更多的客户和市场份额,也为公司的长远发展奠定了坚实的基础。

FCT Electronics公司的发展小趣事

随着电子行业的快速发展,市场竞争日益激烈。为了应对挑战,FCT Electronics不断加大研发投入,推出了一系列具有自主知识产权的新产品。同时,公司还加强了与高校、研究机构的合作,引进了一批高素质的人才,为公司的持续发展注入了新的活力。

Excelitas公司的发展小趣事

为了进一步提升竞争力,Excelitas公司积极寻求与其他企业的战略合作。在一次重要的合作中,Excelitas与一家知名的半导体公司达成合作协议,共同开发新型光电传感器。通过资源整合和优势互补,双方成功推出了多款具有竞争力的产品,实现了互利共赢。这次合作不仅增强了公司的技术实力,还为公司带来了新的市场机遇。

问答坊 | AI 解惑

中国已成世界第一光伏生产国

高交会开展以来,以光伏太阳能为代表的新能源参展项目受到不少追捧。记者在国家高新技术成果展区看到,力诺太阳 、天威保变等新能源公司展台十分热闹,昨日举行的中国太阳能光伏产学研合作联盟启动大会暨发展论坛也人满为患。   记者在现场看到 ...…

查看全部问答>

15075040

怎样学好单片机?…

查看全部问答>

关于AT89S52

我刚买了一个AY-USB-51F的机子,为什么会出现编程器不存在,,…

查看全部问答>

学习单片机汇编用什么编译器好!

最近这段时间正在学习单片机,看的是李光地老师的单片机基础,里面用到的都是汇编语言,但没用讲开发环境之类的东西,所以我想问问学习单片机汇编用什么编译器好…

查看全部问答>

ISD1760语音芯片SPI不能播放,独立模式可以播放

程序如下:(硬件应该没问题) SPI.H #ifndef _SPI_H_   #define _SPI_H_   #include   //#include \"typedef.h\"   #define uchar unsigned char #define uint unsigned int #define   ...…

查看全部问答>

【求助】已经是第6块了,我该怎么办?

这两天在拿430的F449与FG439的开发板做通讯实验。可是突然两块都烧不进程序了。 具体情况是Downloading aplication提示框消失后就弹出个红色错误提示框,说FATAL ERROR failed to write memory at 0x1100 session aborted 然后确定三个 ...…

查看全部问答>

公司一直采用8051F和ARM系列单片机,采用下TI的试试

       打算应用于低功耗的LED声光产品中,看了TI的介绍被TI的低功耗和节能吸引,在全球倡导绿色环保的大背景下,相信节能,减排,绿色,环保的产品更能深入人心。…

查看全部问答>

大家帮我看看串口接收中断的小麻烦。。。

各位高手,有2个大麻烦: 1、下好程序后,串口有接收到数据可以跳中断,但是,第二次下程序后,就不能跳到中断处理函数了,必须重新上电后才可以重新跳中断,这是为什么尼? 2、我想用串口接收中断来接收一个字符串,以目前来看只能接收到 ...…

查看全部问答>

TinyOS移植的问题

各位朋友,我今年的毕业设计中要用到TinyOS的移植问题,TinyOS是否能够移植到C8051F340单片机上呢?有人移植成功过吗?希望得到大家的帮助,谢谢啦!…

查看全部问答>