新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > W78E516及其在系统编程的实现

W78E516及其在系统编程的实现

作者: 时间:2016-09-12 来源:网络 收藏

摘要: 近年来,在系统编程(ISP)技术的不断发展和成熟,使得硬件设计逐步软件化,硬件结构的通用性日益增强,系统设计、生产、维护、升级等环节都发生着深刻的变革。本文以WINBOND公司的W78E516为例介绍ISP器件的结构及其在系统编程原理。

本文引用地址:https://www.eepw.com.cn/article/201609/304752.htm

关键字: W78E516在系统编程微控制器

使用传统方法对CPU重新编程存在诸多不便,在系统编程技术(以下简称ISP技术)的出现是对传统编程方法的突破。ISP(In System Programming)技术是指,在用户设计的目标系统中或印刷电路板上,为重新配置逻辑或实现新的功能,而对器件进行编程或反复编程的能力。ISP技术的出现和发展开创了数字电子系统设计技术新的一页。ISP技术无需编程器和较高的编程电压,打破了先编程后装配的惯例,形成产品后还可以在系统内反复编程,使具有MTP-ROM可多次编程或反复编程的微控制器的优越性得以更充分的发挥。尤其是在互联网时代,依据系统环境和需要,经调制解调装置(MODEM)、串行口或专用的编程接口就能够通过软件控制,实现系统远程升级和调试,提高产品的适应性,延长产品生存周期,经济效益显著。真正的可编程系统的时代即将到来。

一、 W78E516的结构

W78E516是一种8位微控制器,内部含有在系统可编程的MTP-ROM,用于系统更新。W78E516与标准的8052完全兼容。

1. 特征

(1) 全静态设计,最高工作频率为40MHz。

(2) 64KB APROM存储应用程序和4KB LDROM存储控制ISP操作的程序。2块存储器均为MTP-ROM。

(3) 512字节的片内RAM(包括256字节AUX-RAM,可由软件选择)内部数据RAM有512字节。它分成2个存储单元:256字节高速暂存和256字节辅存。这些地址有不同的确定方式:

① RAM 0H~127H:同8052一样直接或间接寻址,地址指针是被选中的寄存器单元中的R0和R1。

② RAM 128H~255H:同8052一样只能间接寻址,地址指针是被选中的寄存器单元中的R0和R1。

③ AUX-RAM 0H~255H:采用外部数据存储器的方式间接寻址,用MOVX指令,地址指针是选中寄存器单元的R0和R1以及DPTR寄存器。在CHCON寄存器中的第4位置位后,AUX-RAM有效,访问AUX-RAM使用“MOVX@Ri”指令。当执行内部程序存储器的指令时,访问AUX-RAM不会影响 P0,P2,WR和RD。AUX-RAM在复位后失效。

(4) 程序存储器和数据存储器可寻址空间范围为64KB。

(5) 4个8位双向口:P0~P3,1个4位双向多用途编程口P4。

(6) 3个16位的定时器/计数器:T0,T1,T2。T0和T1功能与8051相同。T2是一个16位定时器/计数器,它由T2CON配置和控制。T2能作为外部时钟计数器,也能作为内部定时器,这取决于T2CON的C/T2位的配置情况。T2有3种操作方式:清零、自动重写、波特率发生器。在清零和自动重写方式时,时钟频率与T0和T1相同。

(7) 具有一个全双工串行口。

(8) 具有6个中断源和2级中断能力。

(9) 内部电源管理:空闲方式和掉电方式,这两种方式可由软件选择。

(10) 具有编程后的编码保护功能。

2. 与ISP操作相关的特殊功能寄存器

(1) 在系统编程控制寄存器CHPCON(BFH)功能如表1所列。

表 1

BITNAME功能

7软件复位该位置1且FBOOTSL和FPROGEN都置为1时,微控制器复位,重新开始正常操作。读该位结果为逻辑1时,可以确认CPU处于F04KBOOT模式

6-保留

5-保留

4ENAUXRAM0:使AUX-RAM无效;

1:使AUX-RAM有效3

30必须置为0

20必须置为0

1EBPPRTSL程序地址选择。 1:装载程序位于64KB的APROM。4KB LDROM是重新编程的目标地址。 0:装载程序位于4KB的存储器。64KB的APROM是重新编程的目标地址

0FPROGENMTP-ROM编程使能。 1:使编程功能有效。微控制器进入在系统编程状态。在这种编程模式下,清除、编程、读操作在设备进入空闲模式后可以实现。 0:不能对ROM执行写操作

(2) 编程状态下MTP-ROM的控制字节寄存器SFRCN(C7H)功能如表2所列。

表 2

BITNAME功能

7-保留

6WFWIN选择ISP操作目标存储器。 0:对LDROM重新编程; 1:对APROM重新编程

5OENMTP-ROM输出使能

4CENMTP-ROM使能

3,2,1,0CTRL[3:0]ROM控制信号

(3) SFRAH,SFRAL:在系统编程状态下的目标地址。SFRAH包含地址的高位字节;SFRAL包含地址的低位字节。

(4) SFRFD:编程状态下MTP-ROM的编程数据。

二、 W78E516的在系统编程方法

1. ISP操作实现过程

微控制器通常执行APROM中的程序。如果APROM中的程序需要修改,用户需要通过设置CHPCON寄存器来激活在系统编程模式。在默认情况下,CHPCON是只读的,必须依次向寄存器中写入#87H和#59H,才能使CHPCON的写特性有效。激活CHPCON的写特性后,在其0位置位,进入在系统编程模式。ISP操作包括进入/退出在系统编程模式、编程、擦除、读等,它们是在CPU处于空闲模式时完成的,因此,设置CHPCON寄存器后使 CPU进入空闲模式,并由定时器中断的发生来控制执行每一种ISP操作的时间。定时器中断到来时,转入LDROM中执行相关的中断服务程序。第一次执行 RETI指令后, PC指针清零,指向LDROM中的00H。当APROM中的内容被完全更新后,将CHPCON的第0,1,7位设置为逻辑1,通过软件复位的方式返回 APROM执行其中的新程序。在应用程序需要频繁更新的情况下,这种在系统编程方式使工作简单而高效。

在默认情况下,上电复位后W78E516从程序中启动。在某些情况下,可以使W78E516从LDROM中启动。当APROM中的程序不能正常运行,W78E516无法跳到LDROM中执行ISP操作时,CPU进入F04KBOOT模式。在应用系统设计中一定要注意P2,P3,ALE,EA和 PSEN引脚在复位时的值,以避免意外激活编程模式或F04KBOOT模式。复位时进入F04KBOOT MODE时P43,P2.7,P2.6引脚电平及时序如图1及图2所示。

P4.3P2.7P2.6MODE

XLLF04KBOOT

LXXF04KBOOT

W78E516处于在系统编程模式时,MTP-ROM可以被反复编程和检验。向 MTP-ROM中完整、正确地写入新代码后,新代码即被保护起来。W78E516有专用设置寄存器组(special setting re-gisters),其中包括安全性寄存器(security register)和公司/器件识别寄存器(company/device ID registers),处于编程模式时不能访问这些寄存器。安全性寄存器在LDROM空间的地址是0FFFFH,当它的各个位被从1编程为0后就不能再被改变,将它们重新置位的惟一方式是执行全部擦除操作,这样就能保证其安全性。


上一页 1 2 下一页

关键词:

评论


相关推荐

技术专区

关闭