第09章Flash存储器在线编程.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第09章Flash存储器在线编程

第9章 Flash存储器在线编程 主要内容 9.1 Flash存储器概述 9.2 AW60的Flash存储器编程方法 9.3 AW60的Flash在线编程C语言实例 9.4 S08 Flash存储器的保护特性和安全性 9.1 Flash存储器概述 9.1.1 Flash存储器的基本特点与编程模式 Flash存储器的基本特点 固有不挥发性 易更新性 成本低、密度高、可靠性好 Flash存储器的编程模式 从Flash存储器的基本特点可以看出,在单片机中,可以利用Flash存储器固化程序,一般情况下通过编程器来完成,Flash存储器工作于这种情况,叫监控模式(Monitor Mode)或写入器模式,这与一般的EPROM、OTP、EEPROM装入程序的含义相似。另一方面,由于Flash存储器具有电可擦除功能,因此,在程序运行过程中,有可能对Flash存储区的数据或程序进行更新,Flash存储器工作于这种情况,叫用户模式(User Mode)或在线编程模式 9.1.2 S08系列MCU的Flash存储器 Freescale公司在Flash存储器技术相当成熟之后才推出了片 内带有Flash存储器的8位MCU,在应用的方便性和可靠性等方面 有其独到的特点: 编程速度快且可靠性高 S08系列MCU的片内Flash存储器的整体擦除时间可以控制在5ms以内,对单字节的编程(写入)时间也在40ns以内。片内Flash存储器的存储数据可以保持10年以上,可擦写次数均在1万次以上 单一电源电压供电 S08系列MCU通过在片内集成的电荷泵,可由单一工作电压在片内产生出编程电压,这样就实现了单一电源供电的在线编程电压,而不需要为Flash的编程增加额外的编程电压模块,同时也使S08系列MCU兼具了两种编程模式 支持在线编程 S08系列MCU的片内Flash存储器支持在线编程,允许MCU内部运行的程序去改写Flash存储器的内容,这样就可以代替外部电可擦除存储芯片,从而减少了外围部件,增加了嵌入式系统开发的方便性 9.2 AW60的Flash存储器编程方法 9.2.1 Flash存储器编程的基本概念 Flash编程的基本操作有两种: 擦除(Erase):将存储单元的内容由二进制的0变成1 写入(Program):将存储单元的内容由二进制的1变成0 擦除操作包括整体擦除和页擦除。而写入操作是以字为单位进行的。在擦除及写入过程中一般需要高于电源的电压。Flash存储器在片内是以页(Page)和行(Row)为单位组织的,页的大小始终为行的两倍。对Flash存储器的擦除操作可以进行整体擦除也可以仅擦除某一起始地址开始的一页(512字节) 9.2.2 Flash存储器的编程寄存器 Flash时钟分频寄存器 FCDIV (Flash Clock Divider Register—FLCR)的地址是 $1820 D7—DIVLD为分频设置状态标志位(Divisor Loaded Status Flag),DIVLD为只读位 D6—PRDIV8为Flash预分频设置位(Prescale Flash Clock by 8) D5~D0—DIV5~DIV0为Flash时钟分频器的分频因子。 Flash的内部工作时钟 fFCLK的计算方法如下: 如果PRDIV8=0,fFCLK=fbus÷([DIV5:DIV0]+1) 如果PRDIV8=1,fFCLK=fbus÷(8×[DIV5:DIV0]+1) 数据位 D7 D6 D5 D4 D3 D2 D1 D0 定义 DIVLDD PRDIV8 DIV5 DIV4 DIV3 DIV2 DIV1 DIV0 复位 0 0 0 0 0 0 0 0 在对Flash进行编程操作时,Flash的内部工作时钟必须降到150KHz~200KHz,擦/写操作的脉冲是Flash的内部工作时钟的一个时钟周期,所以擦/写的时间相应地在6.7μs~5μs。下表出了对FCDIV寄存器设置不同的数值时对Flash擦写操作的影响 fBus PRDIV8 DIV5:DIV0 fFCLK 擦写的时钟脉冲 20MHz 1 12 192.3KHz 5.2μs 10MHz 0 49 200KHz 5μs 8MHz 0 39 200KHz 5μs 4MHz 0 19 200KHz 5μs 2MHz 0 9 200KHz 5μs 1MHz 0 4 200KHz 5μs 200KHz 0 0 200KHz 5μs 150KHz 0 0 150KHz 6.7μs Flash选项寄存器 Flash选项寄存器(Flash Op

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档