当前位置: 首页 > news >正文

大连地区建设网站站长工具永久更新

大连地区建设网站,站长工具永久更新,网站建设前台后台设计,未来做啥网站能致富目录 一、内部Flash简介 二、内部Flash构成 1. 主存储器 2. 系统存储区 3. 选项字节 三、内部Flash写入过程 1. 解锁 2. 页擦除 3. 写入数据 四、工程空间分布 某工程的ROM存储器分布映像: 1. 程序ROM的加载与执行空间 2. ROM空间分布表 一、内部Flash…

目录

一、内部Flash简介

二、内部Flash构成

1. 主存储器

2. 系统存储区

3. 选项字节

三、内部Flash写入过程

1. 解锁

2. 页擦除

3. 写入数据

四、工程空间分布

某工程的ROM存储器分布映像:

1. 程序ROM的加载与执行空间

2. ROM空间分布表


一、内部Flash简介

        STM32芯片内部有一个Flash存储器,主要用于存储代码,我们在电脑上编写好应用程序后,使用下载器把编译后的代码文件烧录到该内部Flash中。由于Flash存储器的内容在掉电后不会丢失,芯片重新上电复位后,内核可从内部Flash中加载代码并运行。由于访问内部Flash的速度要比外部的SPI-Flash快得多,所以在紧急状态下常常会使用内部Flash存储关键记录

二、内部Flash构成

1. 主存储器

        一般说STM32内部Flash的时候,都是指主存储器区域,它是存储用户应用程序的空间芯片型号说明中的256k Flash、 512k Flash都是指这个区域的大小

        主存储器分为256页,每页大小为2KB,共512KB。这个分页的概念,实质就是Flash存储器的扇区,与其他Flash一样,在写入数据前,要先按页(扇区)擦除。 主存储器的页数量、页大小根据芯片型号均有不同。

2. 系统存储区

        该区域用户无法访问,它在芯片出厂时已经固化了启动代码,它负责实现串口、USB以及CAN等ISP烧录功能。

3. 选项字节

        选项字节用于配置Flash的读写保护、待机/停机复位、软件/硬件看门狗等功能,这部分共16字节。可以通过修改Flash的选项控制寄存器修改。

三、内部Flash写入过程

1. 解锁

        由于内部Flash空间主要存储的是应用程序,是非常关键的数据,为了防止因误操作修改了这些内容,芯片复位后默认会给控制寄存器Flash_CR上锁,这时不允许设置Flash的控制寄存器,从而不能修改Flash中的内容。所以对Flash写入数据前,需要先给它解锁。

2. 页擦除

        在写入新的数据前,需要先擦除存储区域,STM32提供了页(扇区)擦除指令和整个Flash擦除(批量擦除)的指令,以批量擦除仅针对主存储区的指令

3. 写入数据

        擦除完毕后即可写入数据,写入数据的过程并不是仅仅使用指针向地址赋值,赋值前还需要配置一系列的寄存器。

四、工程空间分布

        由于内部Flash本身存储程序数据,若不是有意删除某段程序代码,一般不应修改程序空间的内容。所以在使用内部Flash存储其他数据前,需要了解哪一些空间己经写入了程序代码,存储了程序代码的扇区都不应做任何修改。

        通过 查询 应用程序 编译时产生的 “ *.map ” 后缀文件,可以 了解 程序 存储到了 哪些区域。

某工程的ROM存储器分布映像:

1. 程序ROM的加载与执行空间

        两段分别以 “ Load Region LR_ROM1 ” 及 “ Execution Region ER_IROM1 ” 开头的内容,分别描述程序的 加载及执行空间

        在芯片刚上电运行时,会 加载程序及数据,例如它会 从程序的存储区域加载到程序的 执行区域,还把一些 已初始化的全局变量 从ROM复制到RAM空间,以便 程序运行时 可以 修改变量的 内容。

        加载完成后,程序开始从执行区域开始执行。在map文件中,加载及执行空间的 基地址 (Base) 都是 0x08000000,它正好是 STM32内部Flash的首地址,即 STM32的 程序存储空间直接就是执行空间。它们的大小(Size) 分别为0x000014c4及0x000014b4。

        执行空间的 ROM 比较小 的原因就是 因为部分 RW-data类型的 变量被拷 贝到 RAM空间了

        它们的最大空间(Max)均为0x00080000, 即 512K字节,它指的是 内部Flash的最大空间

        计算程序 占用空间时,需要 使用 加载区域的大小进行计算,本例子中的 内部Flash是从0x08000000至( 0x08000000+0x000014c4 ) 地址的 空间区域。

2. ROM空间分布表

        在加载及执行空间总体描述之后,紧接着一个ROM详细地址分布表,它列出了工程中的各个段(如函数、常量数据) 所在的地址Base Addr及占用的空间Size。

        列表中的 Type 说明了 该段的类型,CODE 表示 代码,DATA 表示 数据,而 PAD 表示 段之间的 填充区域,它是 无效的内容,PAD 区域往往是为了解决地址对齐的问题

        表中的最后一项,它的基地址是 0x08001494,大小为 0x00000020,可知它占用的最高的地址空间为 0x080014b4,与执行区域的最高地址0x000014b4一样,但它们 比加载区域说明中的最高地址0x80014c4要小,所以以加载区域的大小为准

        从内部 Flash 页地址 分布表,可知 仅使用页 0~2 就可以 完全存储 本应用程序,所以从页 3( 地址 0x08001800 )以后的 存储空间都 可以用于其他用途,使用这些 存储空间时不会篡改 应用程序空间的 数据。

http://www.yayakq.cn/news/836369/

相关文章:

  • 做消费信贷网站价格wordpress插件是中文吗
  • 在线可以做翻译的网站ui设计培训机构怎么样
  • 惠州网站建设公司曾网站项目申请
  • 上海简站商贸有限公司建设企业网站多少钱
  • 网站建设原因网站建设 中企动力 常州
  • 怎么建立一个网站搜关键词会跳出空间做网站
  • 南阳网站怎么推广wordpress膜版教程视频
  • 营销型网站建设开发价格网站跳出率因素
  • 梅州建站找哪家苏州seo关键词优化价格
  • 淘宝网站推广策划方案制作一个WordPress主题
  • 西安行业网站制作长春做网站seo
  • 个人开发app能赚多少wap网站优化
  • 网站建设pdf下载郑州app定制开发
  • 鞍山网站制作小程序北京做企业网站
  • cms建站系统开源手机社交网站模板
  • 阜阳网站建设价格低我的世界做视频封面的网站
  • 芜湖企业排名重庆关键词seo排名
  • 哪些网站做微课赚钱博物馆网站建设必要性
  • 网站婚庆模板怎样做医疗网站不违法
  • 婚庆网站开发工具装饰网站建设网
  • 医疗器械公司网站建设做餐饮连锁加盟如何选网站推广
  • 网站alexa流量查询做小程序要有网站吗
  • 十堰市建设网站的公司icp备案是网站上线前
  • 网站建设公司首选做网站最基础需要什么条件
  • 网站开发毕业答辩深圳政务服务网官网首页
  • 阜阳城乡建设档案馆网站宁阳移动网站制作
  • 网站开发翻译在线修图编辑器免费
  • 给女朋友做的网站源码专业做淘宝网站
  • 汉字叔叔花了多少钱做网站网站后台策划书
  • 太原网站关键词推广360网站页面的工具栏怎么做