- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
战略性信息产业教育服务提供商 联世界 育未来——创新物联教育 1、内部Flash介绍 2、相关寄存器 3、开发实验 4、拓展题 本章简介 1、内部Flash介绍 内部Flash是什么? 内部Flash,其实就是单片机内部的内存。 闪存就是在断电情况下仍能保持所存储的数据信息的存储器 内存数据删除不是以单个的字节为单位而是以固定的区块为单位,这样闪存就比EEPROM的更新速度快。 RAM主要是做运行时数据存储器, FLASH主要是程序存储器, EEPROM主要是用以在程序运行保存一些需要掉电不丢失的数据 现在的单片机(这点不理解可以跳过,只要知道他是一个存储器就行 嵌入式Flash存储器包括多达128 页面,每页有2048 个字节 Flash存储器分为2048 字节的Flash页面,Flash页面是存储器内可擦除的最小单元,而32 位字是可以写入Flash的最小可写单元 xdata 指单片机里的Flash存取器,Flash相对单片机里的RAM属于外部存取器,虽其结构位置装在单片机中,所以搂主误解为xdata一定是放在单片机外面,其是xdata是放在相对RAM的外面,而flash正是相对RAM外面 1、内部Flash介绍 1、选择FLASH区域 如选BANK7 MEMCTR |= 0x07 工作流程介绍: 1、内部Flash介绍 2、读取数据(因数据实际存放在BANK7中,因此需要绝对访问 3、擦除数据 3.1、关中断 EA=0; 3.2、查询flash控制器是否就绪FCTL.BUSY ==1 3.3、选择要擦除的页FADDRH[7:1] 3.4、启动擦除FCTL.ERASE = 1 3.5、等待擦除完成FCTL.BUSY == 0 3.6、开中断 EA = 1; 4、写数据 4.1、清DMA状态标识 4.2、选择DMA通讯通道 4.3、配置FLASH地址 4.4、启动写 FCTL.WRITE = 1 4.5、等待写完成FCTL.BUSY == 0 2、相关寄存器 位 名称 复位 R/W 描述 7 BUSY 0 R 代表写入或者擦除操作。当设置WRITE 或ERASE 位时设置该标志。 0: 没有活跃的写入或擦除操作。 1: 有活跃的写入或擦除操作。 6 FULL ? R /H0 写缓存满状态。 0:写缓存可以接受更多数据。 1:写缓存满了。 5 ABORT 0 R /H0 中止状态。当一个写操作或页面擦除中止时设置该位。当访问页面被锁时操作中止。当一个写或页面擦除开始清除中止位。 4 - 0 R 保留 3:2 CM[1:0] 01 R/W 缓存模式。 00:缓存禁用。 01:缓存使能。 10:缓存使能,预取模式。 11:缓存使能,实时模式。 1 WRITE 0 R/W1/H0 写。开始在FADDRH:FADDRL 给定的位置写字。 0 ERASE 0 R/W1/H0 页面擦除。擦除通过FADDRH[7:1]给出的页。 CM:禁用缓存会增加功耗,降低性能。预取对大多数应用程序提高了性能高达33%,代价是可能增加了功耗。实时模式提 供可预见的闪存读访问时间;执行时间等于缓存禁用模式下的时间,但是功耗较低。注意:读出的值总是代表当前缓 存模式。写一个新的缓存模式启动一个缓存模式改变请求,可能需要一些时钟周期才能完成。如果有一个当前缓存改 变请求正在进行,写这个寄存器被忽略。 WRITE:位保持1 直到写完成。清除该位表示擦除已经完成,即已经超时或中止。如果ERASE 也设置为1,在写之前执行 FADDRH[7:1]寻址的整个页面的一个页面擦除。当ERASE 是1,设置WRITE 为1 不起作用。 ERASE:位保持1 直到写完成。清除该位表示擦除已经完成,即已经超时或中止。当WRITE 是1,设置ERASE 为1 不起作用。 FULL:闪存写期间当4 个字节已经被写入FWDATA,设置该标志。写缓存满了不接受更多数据,即当设置FULL 标志时写 入FWDATA 被忽略。当写缓存重新准备好接收4 个更多字节,清除FULL 标志。该标志仅在CPU 用于写闪存时需要。 Flash控制寄存器 FCTL 2、相关寄存器 位 名称 复位 R/W 描述 7:4 - 0000 R0 保留 3 XMAP ?0 R /W XDATA 映射到代码。当设置了这一位,SRAM XDATA 区域从 0x0000 到(SRAM_SIZE-1) 映射到 CODE 区域的 0x8000 到 (0x
原创力文档


文档评论(0)