片上Flash(Embedded Flash)若干问题,包括Flash大小(内存映射)、块大小、页面大小、寄存器。这些知识,有利于写Flash驱动。

通过数据手册(内存映射)

也可以通过数据手册得到Flash大小,首先根据型号从官网下得对应的数据手册Datasheet(点这里,输入MCU型号进行检索。STM32F103RB相关的手册都在这:http://www.st.com/internet/mcu/product/164487.jsp),打开找到Memory map这张图,如图2红框所示(图2红框放大即为图3),Flash在内存的映射地址0x0800 0000 ~ 0x0801 FFFF,即大小为128KB。通过该方法也可以了解到片上Flash的内存映射。

图3 Memory map中的SRAM和Flash

二、块大小

对于系统而言,Flash分为片上Flash(Embedded Flash)和外置Flash。通常说,Flash先分块再分页,擦除是按块进行,这样的说法应该只是对外置Flash而言,对于片上Flash即可以按页擦除也可以整块擦除,英文原文如下[2]:

  1. The Flash memory erase operation can be performed at page level or on the whole Flash area (mass-erase). The mass-erase does not affect the information blocks.

图4 Flash module organization (medium-density devices)

四、Flash相关寄存器

Flash寄存器在内存的映射如下[1]:

Flash各寄存器具体地址如下[2]:

图6 Flash memory interface registers of medium-density devices

具体到各寄存器功能,位含义,得参考[3],Flash寄存器映射如下:

五、Information block

Flash中Information block在内存映射如下[1]:

具体的Flash的Information block地址如下:

图9 Information block of medium-density devices

System memory包含一段引导程序(当系统从片上Flash启动会用到),Flash出厂后就不能修改,不晓得我理解得对不对,贴出原文如下[3]:

  1. System memory is used to boot the device in System memory boot mode. The area is reserved for use by STMicroelectronics and contains the boot loader which is used to reprogram the Flash memory using the USART1 serial interface. It is programmed by ST when the device is manufactured, and protected against spurious write/erase operations. For further details please refer to AN2606.

The option bytes are managed by an embedded Flash Program/Erase Controller (FPEC),详情见[3]。

有两种规格,1Kb和2Kb的,也就是1024字节和2048字节,一般来说内部flash大的采用2048字节一页,内部flash小的采用1024字节一页。
你可以STM32F103系列为参考:
小容量产品主存储块1-32KB, 每页1KB。
中容量产品主存储块64-128KB, 每页1KB。
大容量产品主存储块256KB以上, 每页2KB。
互联型产品主存储块256KB以上, 每页2KB。

片内Flash的认识相关推荐

  1. flash读取程序 msp430_MSP430单片机对片内FLASH的读写操作程序范例

    原标题:MSP430单片机对片内FLASH的读写操作程序范例 // 参数: wAddr 为地址 , 范围 0x1000~0xFFFF void ReadFlash(U16 wAddr,U8 *bBuf ...

  2. stm32怎么加载字库_如何用STM32的片内Flash存储中文字库

    原标题:如何用STM32的片内Flash存储中文字库 在 中,成本往往是敏感的,如果你的Flash足够大,就可以省去片外Flash,我用结构体实现了该功能,并分享给广大网友,最后附有下载链接. 在fo ...

  3. STM32片内FLASH烧写错误导致ST-LINK烧录不进程序的问题解决过程

    STM32片内FLASH烧写错误导致ST-LINK烧不进程序的问题解决过程 项目及配置描述 这个问题是在做bootloader OTA测试时出现的,其中bootloader由http://iot.rt ...

  4. STM32F1_片内FLASH编程

    前言 今天总结"STM32F103  片内FLASH编程",对于学习编程的人来说"FLASH"这个词肯定很熟悉,因为FLASH主要用于存储数据.对于STM32来 ...

  5. GD32片内flash读写数据

    GD32现在越来越火,应用也越来越广泛.我们在开发项目的时候,总会有需要掉电存储一些配置信息的时候,但是使用外挂flash.或者EEPROM,或多或少都会占用一些外围接口或增加一定的成本.于是,直接将 ...

  6. STM32F103VET6利用片内FLASH虚拟U盘,使用文件复制方式实现IAP

    在原子论坛偶尔搜到一篇 利用STM32片内FLASH虚拟U盘,使用文件复制方式实现IAP的帖子http://www.openedv.com/forum.php?mod=viewthread&t ...

  7. 基于STM32F103C8T6片内Flash的音频播放(DAC通道)

    基于STM32F103C8T6片内Flash的音频播放(DAC通道) 一.STM32的DAC通道介绍 1.DAC 简介 2.STM32中的DAC主要特点 3.DAC 功能框图剖析 4.DAC配置 二. ...

  8. 基于stm32片内Flash数据的DAC输出

    stm32片内Flash的提示音播放 前言 一.DAC简介 二.使用DAC输出单周期的正弦波 三.PCM模块输出音频 前言 使用用Adobe audition音频编辑软件录制"您好欢迎光临! ...

  9. STM32F103基于片内flash的数据读取与音乐播放

    目录 一.前言 二.题目要求 三.什么是片内flash 四.闪存的编程和擦除 五.基于flash的数据读取 1.工程创建 2.修改代码 3.烧录 4.调试 六.基于flash的提示音播放 1.生成正弦 ...

  10. 基于stm32实现片内flash读取数据及音乐播放(不完整)

    基于stm32实现片内flash读取数据及音乐播放(不完整) FLASN 一.片内flash 三.flash数据读取 1.工程建立 2.修改代码 3.烧录运行与结果 四.flash实现提示音播放 1. ...

最新文章

  1. 太棒了!Jupyter 与 PyCharm 完美融合,Jupytext 来啦!
  2. HDU3007(最小圆覆盖问题)
  3. php python 循环,python 怎么用for重复(循环)
  4. 项目托管到Github
  5. rust营火为什么放不下去_从一个研发质量案例看,5why分析法,为什么分析不下去了?...
  6. 【Linux系统编程】进程的控制:结束进程、等待进程结束
  7. 第十一期:数据挖掘其实就是为了干这四种事?
  8. 一个前端框架应该有的一些公共函数
  9. 2.tcpdump(2)
  10. 【计算机技术】我用两句话在电脑课上解除了老师的控制
  11. 最全常见算法工程师面试题目整理
  12. 显著性水平 置信度 置信区间 实例讲解
  13. windows memcached php扩展,Memcached 的学习:windows下php开memcached扩展
  14. Python 列表转为字典
  15. 云凤蝶可视化搭建的推导与实现 - SEE Conf
  16. 开放式耳机的颠覆之作!南卡OE Pro新皇降临!佩戴和音质双重突破
  17. mysql级联删除_近百道MySQL面试题和答案(2020收藏版)(完结篇)
  18. html网页设计文字出现动画,网页设计中的文字与图片的动画有以下几种形式
  19. SEO魔法书-网站优化
  20. C#编写的基于VLC的播放器

热门文章

  1. 七夕了没有男/女朋友怎么办?孤寡机器人帮你!
  2. vue 知识点整理——组件(components)
  3. Pthread并行编程总结
  4. 使vim变正常_我为什么爱Vim:鲜为人知的功能使其变得如此惊人
  5. 面向对象-理解多态看这一篇博客就行了
  6. 10 个解放双手超实用在线工具,有些代码真的不用手写
  7. 55.EasyCountDownTextureView
  8. docker启动jenkins环境
  9. 情到深处的中英对照爱情感言
  10. linux为文件创建软链接