- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FLASH操作说明
STM32处理器内部 FLASH操作说明
写FLASH的时候,如果发现写入地址的FLASH没有被擦出,数据将不会写入
一、STM32F1系列处理器
STM32F1系列处理器,FLASH擦除是以页为单位,页地址以下地址无效。换句话说,页大小为2K时,接收的实际有效地址将是ADR~0x7FF。
STM32F1系列有4种Flash module organization,分别是:
low-density devices(小容量,32KB,1KB/page);
medium-density devices(中容量,128KB,1KB/page);
high-density devices(大容量,512KB,2KB/page);
connectivity line devices(互联型,256KB,2KB/page)、XL-density(devices(1M,2KB/page)。
//===========闪存模块组织(小容量产品: low-density devices) ==============
//页0 0x0800 0000 – 0x0800 03FF 1K
//页1 0x0800 0400 – 0x0800 07FF 1K
//页2 0x0800 0800 – 0x0800 0BFF 1K
//页3 0x0800 0C00 – 0x0800 0FFF 1K
//页4 0x0800 1000 – 0x0800 13FF 1K
//... ... ...
//页31 0x0800 7C00 – 0x0800 7FFF 1K
//===========闪存模块组织(中容量产品: medium-density devices) ==============
//页0 0x0800 0000 – 0x0800 03FF 1K
//页1 0x0800 0400 – 0x0800 07FF 1K
//页2 0x0800 0800 – 0x0800 0BFF 1K
//页3 0x0800 0C00 – 0x0800 0FFF 1K
//页4 0x0800 1000 – 0x0800 13FF 1K
//
//页127 0x0801 FC00 – 0x0801 FFFF 1K
//===========闪存模块组织(大容量产品: high-density devices) ==============
//页0 0x0800 0000 – 0x0800 07FF 2K
//页1 0x0800 0800 – 0x0800 0FFF 2K
//页2 0x0800 1000 – 0x0800 17FF 2K
//页3 0x0800 1800 – 0x0800 1FFF 2K
//
//页255 0x0807 F800 – 0x0807 FFFF 2K
//===========闪存模块组织(互联型产品: connectivity line devices)==============
//页0 0x0800 0000 – 0x0800 07FF 2K
//页1 0x0800 0800 – 0x0800 0FFF 2K
//页2 0x0800 1000 – 0x0800 17FF 2K
//页3 0x0800 1800 – 0x0800 1FFF 2K
//
//页127 0x0803 F800 – 0x0803 FFFF 2K
//FLASH_ErasePage(addr); //addr为对应页的首地址。
二、STM32F2、F4系列处理器
STM32F2、F4系列处理器,FLASH的擦除操作,只能按Sector进行。不能单独擦除一个地址上的数据。因此在写数据之前需要将地址所在Sector的所有数据擦除。
STM32F407VG的内部FLASH的地址是:0大小是0/* Base address of the Flash sectors */#define ADDR_FLASH_SECTOR_0???? ((uint32_t)0 /* Base @ of Sector 0, 16 Kbytes */#define ADDR_FLASH_SECTOR_1???? ((uint32_t)0 /* Base @ of Sector 1, 16 Kbytes */#define ADDR_FLASH_SECTOR_2???? ((uint32_t)0x0
文档评论(0)