ST单片机EEPRM的应用和程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ST单片机EEPRM的应用和程序.doc

STC单片机EEPROM的应用和程序 (2009-04-22 21:58:34) 转载▼ 标签: 分炎:Program 杂谈 最近,凼于工作的需要,用STC89C52來开发新产品,要用天STC的Eeprom的功能,上 网也找了一点资料,得到很人帮助,真的非常感谢。程序是我在网上 的,调试通过了, 不过我产品在用动态扫描显示的,由于在Eeprom擦除吋要用几十毫秒,会有?闪烁的。不 过这是正常的。 单片机运行吋的数据都存在于KAM (随机存储器)中,在掉电后RAM中的数据是无 法保留的,那么怎样使数据在掉电后不丢失呢?这就需要使用ERPROM或FLASHROM等 存储器来实现。在传统的单片机系统屮,一般是在片外扩展存储器,单片机5存储器之叫通 过TTC或SPT等接II来进行数据通信。这样不光会增加开发成木,同时在程序开发上也要 花 更多的心思。在STC单片机中内置了 EEPR0M (其实是采用IAP技术读写内部FLASH来 实现EEPROM),这样就节宵了片外资源,使用起来也更加方便。下面就详细介绍STC单 片机内置EEPR0M及其使用方法。 STC各型兮单八机闪置的EEPKOM的容S各冇不同,见下表: (内部EEPROM可以擦写100000次以上) 上面提到了 IAP,它的意思是“在应用编程”,即在程序运行时程序存储器可由程序 身进行擦写。正是是因为有了 TAP,从而可以使单片机可以将数据写入到程序存储器屮,使 得数据如同烧入的程序一样,掉电不丢失。当然写入数椐的区域勹程序存储区要分开來,以 使程序不会遭到破坏。 要使用IAP功能,与以卜几个特殊功能寄存器相关: ISP_DATA: ISP/IAP操作时的数据寄存器。 1SP/1AP从Flash读出的数据放在此处,向Flash写的数裾也需放在此处 ISP_ADDRH: ISP/IAP操作吋的地址寄存器高八位。 ISP_ADDRL: ISP/IAP操作吋的地址寄存器低八位。 ISP CMD: ISP/IAP操作时的命令模式寄存器,须命令触发寄存器触发方可斗:效。 ISP_TRIG: ISP/IAP操作时的命令触发寄存器。 当 ISPEN (ISP_C0NTR.7) =1 时,对 ISP_TRIG 先写入 0x46,再写入 0xb9, ISP/IAP 命令才会生效。 单厂f机芯八型号起始地址内置EEPROM界量(毎扇区512字节) STC89C51RC, STC89LE51RC 0x2000 共八个扇区 STC89C52RC, STC89LE52RC 0x2000 共八个扇区 STC89C54RD+, STC89LE54RD+ 0x8000 共五 |?八个扇区 STC89C55RD+, STC89LE55RD+ 0x8000 共五丨?八个扇区 STC89C58RD+, STC89LE58RD+ 0x8000 共五十八个扇区 寄存器标识地址名称7 6 5 4 3 2 1 0初始位 ISP_DATA 0xE2 ISP/IAP 闪存数据寄存器TSP ADDRH 0xE3 ISP/IAP 闪存地址髙位TSPjWDRL 0xE4 TSP/TAP 闪存地址低位1SP_CMD 0xE5 1SP/1AP 闪存命令寄存器.MS2 MSI MSO xxxxxOOO 1SP_TR1G 0xE6 ISP/IAP 闪存命令触发 xxxxxxxx ISP_CONTR 0xE7 TSP/TAP 控制寄存器 TSPEN SWBS SWRST WT2 WT1 WTO OOxxOOO B7 B6 B5 B4 B3 B2 BI BO命令/操作模式选择 保留命令选择 0 0 0待机模式,无ISP/TAP操作 0 0 1对用户的应用程序Flash区及数据Flash区字节读 0 10对用户的应用程序Flash区及数据Flash区字节编程 0 11对用户的应用程序Rash区及数据Flash区扇区擦除 ISF_CONTR: ISP/IAP 控制寄存器。 ISPEN: ISP/IAP功能允许位。0:禁止ISP/IAP编程改变Flash, 1:允许编程改变Flash SWBS:软件选择从用户主程序区启动(0),还是从TSP程序区启动(1)。 SWRST: 0:不操作,1:产生软件系统复位,硬件自动清零。 ISP CONTR屮的SWBS与SWRST这两个功能位,可以实现单片机的软件启动,并 启动到ISP区或用户程序区,这在“STC单片机动K载” 一节,亦奋所应川。 如: ISP_C0NTR=0x60?则讨以实现从用户应用程序区软件g位到ISP程序区幵始运行 程序。 ISP_CONTR=0x20?则可以实现从1SP程序区软件复位到川户;、V:川程序区幵始运行 程序。 用

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档