找回密码
 立即注册

QQ登录

只需一步,快速开始

帖子
查看: 1053|回复: 0
打印 上一主题 下一主题
收起左侧

EEPROM的全科医生

[复制链接]
跳转到指定楼层
楼主
ID:114320 发表于 2016-5-7 22:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
摘要
EEPROM是可电擦除和电编程的存储器,具有体积小、接口简单、数据保存可靠、可在线改写、功耗低等特点,广泛应用于各种智能系统,如汽车电子、智能电表、智能家居、小家电、玩具等等。本文主要介绍在线编程EEPROM时出现的现实应用难题以及解决方案。


当然,如果是离线编程(裸片烧录),则不存在本文所提到的问题。产线与贴片房的生产形式,大多采用拼板的方式进行。下图中,采用在线编程的方式,更利于程序、数据的更新与维护,因此很多嵌入式系统中均采用在线编程的方式。




在系统电路设计中,主控芯片(单片机)与EEPROM往往共用一组电源,因此,用在线编程器烧写EEPROM时,所加的电压,也会给主控芯片上电,使MCU进入程序运行状态。芯片程序运行时,首先进行各种外设的初始化工作,相应地会对EEPROM总线初始化,从而影响在线编程器对EEPROM的正常操作。

为此,有以下四种实用方案,可以避免在线编程操作异常。




1、延时方案。

编程器可以通过相应的延时错开主控芯片对EEPROM的访问,此方案要求对单片机程序有所了解,要知道单片机何时访问EEPROM。例如,上电时,编程器可以先延时一段时间,待单片机初始化EEPROM总线后,再烧写EEPROM,可以避免单片机与编程器同时操作EEPROM产生的不确定结果。

2、控制复位方案。

我们知道,单片机都有一个复位管脚,当其复位管脚电平有效时,单片机会处于复位状态,内部程序不再运行。因此,上电后,编程器可以通过一个管脚来控制单片机的REST复位引脚,使其处于复位等待状态,从而有效避免烧写时单片机对EEPROM的操作。

3、IAP编程方案。

编写IAP代码,控制主控单片机编程EEPROM。此方法要求单片机支持IAP方式,如增强型80C51及ARM内核的芯片等等。首先编写IAP代码,再通过调试接口(JTAG、SWD等等)将IAP代码加载进芯片的RAM中运行,间接操作EEPROM总线,从而达到编程EEPROM的目的。

4、顺序编程方案。

当单片机与EEPROM都为空片时,同时要对这两芯片进行编程,可以先烧写EEPROM,再烧写主控单片机程序,避免问题的产生。

以上四种方案,对于一个新的系统板(主控单片机与EEPROM都为空片),可以采用第四种编程方案,而对于一个已经烧过程序的系统板,要更新EEPROM中的数据,而不需更改单片机的程序时,可以采用第一、第二和第三种方案。

无论是哪种方案,致远电子的 P800-ISP编程器均能完美支持。P800-ISP 是一款脱机(不需要电脑)在线(芯片先贴好)4通道编程器,支持所有常用的MCU和EEPROM芯片,只需一机在手,即可解决MCU与EEPROM烧写的所有问题。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表