首 页科技博览科普图片植物王国动物世界科普常识农村科普生活科普信息技术科普创作自然之谜
历史今天留言繁體中文
设为首页
加入收藏
联系我们
您当前的位置:科普知识网 -> 电子电工 -> 单片机 -> 博览内容 退出登录 用户管理
 

· 有线电视 · 电子系统
· 显示元件 · 接口电路
· 存储器 · 无线通信
· 传感控制 · EDA/PLD
· 单片机 · DSP技术
· 模拟技术 · 通信网络
· 测试仪表 · 视频音频
· 芯片应用 · 电子通信
· IC电子 · 电子设计
· 自控测量 · IC嵌入式
· IC系统 · EDA系统
· 传感控制 · 电源技术
· 接口电路 · 消费电子
· DSP产品 · 元件工艺
· 模拟技术 · 存储器设备
· 设计应用 · 智能网应用
· 电子电源 · 电子传感
热门博览
· 涡轮
· 什么是路肩?硬路肩?..
· 神秘的海底世界
· 民用飞机
· 电路设计
· 梁桥
· 航空发动机
· 环保--功在当代,利..
· 气球
· 双曲拱桥是一种什么..
相关博览
· 西部交通建设科技项..
· Avago 推出新型SSO封..
· IPC技术标准目录之 ..
· 过程控制(Process C..
· 两个Process中对同一..
· Active and Passive..
· [组图] Mixed-Signal..
· assura RCX 简介
· Issues in RF IC de..
· [组图] Issues in RF..

SST89C54/58系列单片机的IAP应用技术

作者:佚名  来源:不详  

   摘要:SST89C54/58j Silicon Storage Technology公司推出的带有20KB/36KB Flash的单片机。芯片内部集成了可以对Flash进行操作的功能模块。通过对Flash的分区实现在应用中可编程的功能。本文介绍它们的IAP功能,并给出IAP功能的一些子程序。

    关键词:SST89C54/58 IAP Flash存储器

SST89C54/58单片机是MCS-51系列单片机的派生产品。它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容,只是加大了内部程序存储器Flash的容量。

SST89C54/58的特色:

*256×8位内部RAM;

*3个16位定时/计数器(T0、T1、T2);

*1个全双工、可编程串行通信口(UART);

*6个中断源,2 个优先级;

*4个8位I/O口(32位I/O引脚);

*TTL和CMOS电平全兼容;

*5(1±0.1)V供电时,工作频率为0~33MHz;

*3(1±0.1)V供电时,工作频率为0~12MHz;

*内部看门狗定时器(WDT);

*支持3种省电模式:空闲、下电和等待,并且支持外部低电平中断退出下电模式。

1 SST89C54/58的存储器结构

1.1 程序存储器

89C54与89C58之间仅有存储器容量大小的不同;前者20KB,后者为36KB。程序存储器分为block0和block1两块:block0前者为16KB,后者为32KB,都分成了128字节大小的区段;block1均为4KB,分为64字节大小的区段。它们的程序存储器结构如图1所示。

    block0和block1的地址不是连续的。Block1从F000H开始。SST89C54/58允许block0映射到block1,上电后程序既可以从block0(0000H)开始执行,也可以从block1(F000H)开始执行。程序从哪个块开始执行由单片机的Re-Map[1:0]位决定。在这2位都为1的时候程序从0000开始执行,否则,从F000H开始执行。Re-Map[1:0]位是非易失性的,可以用编程器对其编程。

1.2 数据存储器

SST89C54/58有256字节的内部数据存储器,其中低128字节RAM(00H~FFH)与8052完全相同;在高128字节中增加了一些针对IAP功能的特殊功能寄存器(SFR)。新增加的SFR的定义及设置如表1所列。

表1 新增特殊功能寄存器

标识符名   称地   址初始化值
SFSTFlash状态B6Hxxx00000b
SFCFFlash定义B1H000000xxb
SFCMFlash命令B2H00h
SFDTFlash数据B5H00h
SFALFlash地址低字节B3H00h
SFALFlash地址高字节B4H00h

2 SST89C54/58在应用中可编程(IAP)

IAP是指在用户的应用程序中对Flash块、Flash寄存器、加密位等实现擦降和编程等操作。SST89C54/58通过对SFCF.6的置位和清0而启动和介绍IAP功能。程序在block0时可以启动IAP对block1进行编程,也可以在block1对block0进行编程,但是每均都不能对自己进行编程。SST89C54/58r IAP功能主要有以下几个命令(以block0对block1进行编程为例):

(1)片擦除

命令格式如下:

MOV SFCF,#0C0H ;启动IAP

MOV SFDT,#55H

MOV SFCM,#01H ;写入命令字

;查询SFST.2,等待芯片擦除结束,

;用MOVC校验是否每个单元均为FFH。

(2)块擦除

命令格式如下:

MOV SFCF,#0C0H ;启动IAP

MOV SFAH,#0F0H/#00H ;擦队block1/block0

MOV SFDT,#55H

MOV SFCM,#0DH ;写放命令字

;查询SFST.2,等待芯片擦除结束,

;用MOVC校验是否每个单元均为FFH。

(3)区段擦除

命令格式如下:

MOV SFCF,#0C0H ;启动IAP

MOV SFAH,区段地址高字节

MOV SFAL,区段地址低字节

MOV SFCM,#0BH ;写入命令字

;查询SFST.2,等待芯片擦除结束,

;用MOVC校验是否每个单元均为FFH。

(4)字节编程

MOV SFCF,#0C0H ;启动IAP

MOV SFAH,要编程地址高字节

MOV SFAL,要编程地址低字节

MOV SFDT,要编程的数据

MOV SFCM,#0EH ;写放命令字

;查询SFST.2,等待芯片擦除结束,

;校验谝单元写入数据是否正确。

(5)字节校验

MOV SFCF,#0C0H

MOV SFAH,要校验数据的地址高字节

MOV SFAH,要校验数据的地址低字节

MOV SFCM,#06H

NOP

MOV A,SFDT ;A保存规定单元地址读出的内容

另外,通过字节编程可以对Re-Map[1:0]位为3个保密进行编程,只是在特定的地址写入行定的内容。

3 SST89C54/58 IAP功能的用途

通过IAP功能可以不需编程器就可做单片机实验。这对初次学习单片机的人们,尤其对学校单片机的教学带来极大的方便,是一种最低成本的单片机开手段。

可以对产品的软件进行升级。不需外加监控芯片,只是通过串行口便可将PC机内的产品升级软件下载到产品中去,而实现产品软件升级换代。在自己的实验室便可通过Modem对远方的产品进行软件升级。这将是以后电子产品的必然趋势。

还可以在线对产品参数进行修改。可实现在线对现场历史数据的存储、曲线参数校正等功能。适用于一些需经常改变数据的应用产品(如利息计、计费器、密码锁及需要升级的产品,如微型打印机等)及需远距离改变设备参数的产品(遥控报警器遥控家用电器等遥控设备)。




免责声明:作品版权归所属媒体与作者所有!!本站刊载此文仅为普及科学技术知识提供更多信息。如果您认为我们侵犯了您的版权,请告知!本站核实后立即删除。kpzsnet#126.com (#改为@)
[] [返回上一页] [打 印] [收 藏]
∷相关博览评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
关于本站 - 帮助 - 合作 - 声明 - 连接 - 地图 -
Copyright ?2002-2005 Kpzs.Net. All Rights Reserved .
BY::KPZS.NET