Flash存储器在线编程_第1页
Flash存储器在线编程_第2页
Flash存储器在线编程_第3页
Flash存储器在线编程_第4页
Flash存储器在线编程_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、知识回顾硬件结构寻址方式指令系统PTAPTBPTCPTDPTE键盘SCIA/D无SPIT/C1综合实验一键盘输入(PTA口)、两个端口开关量输入(PTE0、1)、显示输出(PTB口)通过键盘输入一个字符,可以通过液晶显示出来;端口开关量的状态(0或者1),通过LCD显示出来2第九章 Flash存储器在线编程9.1 Flash存储器概述与编程模式9.2 MC68HC908GP32单片机存储器编程方法9.3 MC68HC908GP32单片机flash在线编程实例39.1 Flash存储器概述与编程模式9.1.1 Flash存储器的基本特点与编程模式 9.1.2 M68HC08系列单片机Flash存

2、储器的特点与编程模式 49.1.1 Flash存储器的基本特点与编程模式 1Flash存储器的基本特点 (1)固有不挥发性(2)易更新性(3)成本低、密度高、可靠性好 59.1.1 Flash存储器的基本特点与编程模式2Flash存储器的两种编程模式 在单片机中,可以利用Flash存储器固化程序,一般情况下通过编程器来完成,Flash存储器工作于这种情况,叫监控模式(Monitor Mode); Flash存储器具有电可擦除功能,因此,在程序运行过程中,有可能对Flash存储器区的数据或程序进行更新,Flash存储器工作于这种情况,叫用户模式(User Mode)或在线编程模式。 69.1.2

3、 M68HC08系列单片机Flash存储器的特点与编程模式1M68HC08系列单片机Flash存储器的特点 (1)编程速度快及可靠性高(2)单一电源电压供电(3)支持在线编程 79.1.2 M68HC08系列单片机Flash存储器的特点与编程模式Flash存储器工作于监控模式的条件之一是:(1)复位向量($FFFE$FFFF)内容为“空”($FFFF)。(2)在单片机复位时在IRQ引脚上加上高电压(1.42Vdd),并给某些I/O脚置适当值。 89.1.2 M68HC08系列单片机Flash存储器的特点与编程模式两种模式各有优缺点:监控模式需要外部硬件支持,但不需要单片机内部程序的存在,所以适

4、合对新出厂芯片进行编程写入,或是对芯片进行整体擦除与写入;用户模式可以在单片机正常工作时进入,所以常用在程序运行过程中对部分Flash存储器的一些单元内容进行修改,特别适合于目标系统的动态程序更新和运行数据的存储。 99.2 MC68HC908GP32单片机存储器编程方法9.2.1 Flash存储器编程的基本概念 9.2.2 Flash存储器的编程寄存器 9.2.3 Flash存储器的编程过程 109.2.1 Flash存储器编程的基本概念对Flash编程的基本操作有两种:1、擦除(Erase)擦除操作的含义是将存储单元的内容由二进制的0变成1;2、写入(Program)而写入操作的含义,是将

5、存储单元的内容由二进制的1变成0 119.2.1 Flash存储器编程的基本概念Flash存储器在片内是以页(Page)和行(Row)为单位组织的。页和行的大小(字节数)随整个Flash存储器的大小变化而变化,但页的大小始终为行的两倍。 MC68HC908GP32内含32K的Flash存储器(地址为$8000$FFFF),每页的大小为128字节,每行的大小为64字节; 129.2.1 Flash存储器编程的基本概念注意:1、GP32的Flash存储器的擦除操作可以进行整体擦除也可以仅擦除某一起始地址开始的一页(128字节)。2、GP32单片机的写入操作以行(64字节)基础,一次连续写入数据个数

6、只能在一行之内。 3、不经过擦除的区域,不能进行写入 。139.2.2 Flash存储器的编程寄存器1.Flash控制寄存器(FLash Control Register FLCR)$FE08 D7D4位:未定义。D3 HVEN位:高压允许位(High-Voltage Enable Bit)。 D2 MASS位:整体擦除控制位(Mass Erase Control Bit)。D1 ERASE位:擦除控制位(Erase Control Bit)。 D0 PGM位:编程(写入)控制位(Program Control Bit)。 149.2.2 Flash存储器的编程寄存器2.Flash块保护寄存器

7、(FLash Block Protect Register FLBPR)$FF7E159.2.3 Flash存储器的编程过程MC68HC908GP32的Flash编程的基本操作:1.页擦除操作下面过程可以擦除GP32的Flash存储器的一页(128字节): $2FLCR(1ERASE位,0MASS位):进行页面擦除; 读Flash块保护寄存器FLBPR; 向被擦除的Flash页内任意一个地址写入任意值,为方便起见,一般向待擦除页首地址写入0;169.2.3 Flash存储器的编程过程 延时tnvs(10s),; $AFLCR(1HVEN位); 延时terase(1ms); $8FLCR(0ER

8、ASE位); 延时tnvh(5s); $0FLCR(0HVEN位);(10)延时trcv(1s),完成一页的擦除操作。179.2.3 Flash存储器的编程过程2.整体擦除操作 $6FLCR(1ERASE位,1MASS位):进行整体擦除; 读Flash块保护寄存器FLBPR; 向被擦除的Flash任意一个地址写入任意值,为方便起见,一般向首地址写入0; 延时tnvs(10s); $EFLCR(1HVEN位、MASS位、ERASE位);189.2.3 Flash存储器的编程过程 延时tMerase(4ms); $CFLCR(0ERASE位); 延时tnvhl(100s); $0FLCR(0HVE

9、N位、MASS位); (10)延时trcv(1s),完成整体擦除操作。199.2.3 Flash存储器的编程过程3.编程操作 $1FLCR(1PGM位); 读Flash块保护寄存器FLBPR; 向将要写入的Flash行内任意一个地址写入任意值,为方便起见,一般向行首地址写入0,这一步选定了所要编程的行,以下的目标地址必需在这一行中; 延时tnvs(10s); $9FLCR(1HVEN位); 延时tpgs(5s);209.2.3 Flash存储器的编程过程 待写数据写入对应的Flash地址; 延时tprog(30s),完成一个字节的写入(编程)工作; 重复、,直至同一行内各字节写入完毕; $8FLCR(0PGM位); 延时tnvh(5s); $0FLCR(0HVEN位); (10) 延时trcv(1s)以后,完成本行写入工作,可以读出校验 219.3 MC68HC908GP32单片机flash在线编程实例9.3.1 Flash存储器的擦

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论