三线制Microware同步串行EEPROM在MCS-51单片机上的运用

发布者:RadiantBeauty最新更新时间:2012-02-09 来源: 电子工程师 关键字:三线制  串行总线  EEPROM  MCS-51 手机看文章 扫描二维码
随时随地手机看文章

1 三线制Microware串行总线

  三线制Microware同步串行总线接口是 NationalSemicondutor公司在其生产的COP系列和HPC系列微控制器上采用的一种串行总线,它使用的三根信号线分别为数据输入线 SI、数据输出线SO和时钟信号线SK。由于三线制Microware总线只需3~4根数据线和控制线即可扩展具有三线制Microware总线的各种 I/O器件,而并行总线扩展方法却需要8根数据线、8~16根地址线和2~3位的控制线,因此,使用三线制Microware串行总线可以简化电路设计,提高设计的可靠性。

2 三线制Microware总线的EEPROM

  EEPROM是一种可用电气方法在线擦除和再编程的只读存储器,它既有 RAM在联机操作中可读可改写的特性,又具有非易失性存储器ROM在掉电后仍然能保持所存储的数据的优点。93C06/46/56/66是采用CMOS工艺制成的分别为64/128/256/512×8位或16/64/128/256×16位8引脚的可支持三线制Microware串行总线的 EEPROM,其自定时写周期的自动擦除时间不超过10ms,Microchip公司的串行EEPROM的擦除和写入一个字节的时间可缩短到2ms以下,擦除/写入周期寿命一般都可达到10万次以上,有的产品(如NS公司和Microchip公司的产品)已可达到100万次,片内写入的数据保存寿命可达 40年以上。这些三线制Microware总线的EEPROM一般采用单一+5V电源供电,低功耗时工作电流仅400μA,备用时为25μA,同时具有三态输出,并可与TTL电平兼容。

  NM93C06/46/56/66是National Semiconductor公司的产品,与其兼容的有Microchip公司的93C06/46/56/66(4.5V~5.5V)、 93LC46/56/66(2.0V~6.0V)、93AA06/46/56/66和Atmel公司的AT93C46/56/66等产品,其中 AT93C66的引脚排列如图1所示。各引脚说明如下:

  CS:片选信号;
  SK:串行时钟输入信号,同时也是微处理器与EEPROM之间通信的同步信号,数据在它的上升沿锁定有效;
  DI:数据输入;
  DO:数据输出;
  ORG:Microchip公司产品特有引脚。该引脚接Vcc时,器件的内部存储组织结构以16位为一个单元;接GND时,器件的内部存储组织结构以8位为一个单元。

  该芯片有7种指令,其中5种指令集的安排如 表1所列,此外,还有整片写指令(WRAL-Write All)和整片擦除指令(ERAL-Erase All)。应当说明的是:在操作码为00时,为了区分不同指令,通常借用地址的前两位来识别。

  不同型号的EEPROM有不同的存储空间,93C66有512字节的存储空间,其地址为 A8~A0,在编程时,A8可以作为操作指令字节的最后一位,如果需要读93C56中某个存储单元(8位)中的数据,其读指令为0000110A8,地址码为××××××××,此时,如果A8为0,则地址为00H…FFH,如果A8为1,则地址为100H…1FFH,而93C06/46/56的存储空间不超过256个字节,其A8始终为0。

  有关93C06/46/56/66的具体操作时序可参考有关文献[1]。

3 在MCS-51单片机上的应用

  串行EEPROM技术是一种非易失性存储器技术,它是嵌入式控制解决方案中的先进技术,可在MCS-51单片机应用系统中用于数据的掉电保护、在线设置参数的存储、用户在线编程查表法中的表格存储,以及在微控制器的I/O线较少情况下的应用等。

  MCS-51系列单片机没有三线制Microware串行总线接口,当它与 93C06/46/56/66等具有三线制Microware串行总线的EEPROM连接时,应使用相应的软件来模拟三线制Microware串行总线的操作,其中包括串行时钟、数据输入和数据输出。图2为串行EEPROM芯片AT93C66与AT89C51单片机的硬件连接图,图中的R为上拉电阻, AT89C51的P1.0口用于模拟AT93C66的片选端CS,P1.1口模拟AT93C66的时钟输入端SK,P1.2口模拟它的数据输入端 DI,P1.3口模拟数据输出端DO(DI和DO也可以连接在一起)。当在时钟的上升沿第一次检测到CS和DI都为高电平时,可启动AT93C66。在写操作时,首先使AT89C51的P1.1由低变高并产生一个脉冲,再在脉冲的上升沿将1 位数据(先为高位)从P1.2输出到AT93C66中,并清P1.1为0,然后再置P1.1为1,随之P1.2又输出1位数据……依次循环8次, AT89C51便可完成1个字节的输出操作。在写入周期完成后,P1.0由高变低,并在保持最少100ns后变为高电平,这时93C66的DO线用来表示芯片的状态,DO为1表示数据已写入指定的地址中,D0为0则表示正在编程。利用AT89C51可通过查询P1.3的状态来决定是否继续操作,读操作时, P1.1由低变高,AT89C51经P1.3从AT93C66读入1位数据,并循环8次,然后读入1个字节,下面是根据操作时序写出的AT90C51与 93C66连接时的模拟三线制Microware串行总线的操作源程序。

  首先根据AT93C66的指令集,规定如下指令格式:
  指令格式:00001××A8,其中1为起始位,××为操作码,A8为第9位地址码;
  读指令(READ):00001100,即0x0c(如果对93C66的100H…1FFH地址空间操作,则指令最后一位为1,写和擦除指令均如此); 写指令(WRITE):00001010,即0x0a 擦除指令(ERASE):00001110,即0x0e
  擦/写允许指令(EWEN):0000100110000000,即0x0980,该指令分两次写入。

  本程序可用C51语言编写,具体代码如下(不包括整片写和擦除功能):

[page]





参考文献
1.窦振中.单片机外围器件实用手册存储器分册.北京:北京航空航天大学出版社,1998 2.徐爱钧,彭秀华.单片机高级语言C51应用程序设计.北京:电子工业出版计,1998
3.白驹衔,雷晓平.单片计算机及其应用.成都:电子科技大学出版社,1994
关键字:三线制  串行总线  EEPROM  MCS-51 引用地址:三线制Microware同步串行EEPROM在MCS-51单片机上的运用

上一篇:单片机与液晶显示器的接口及应用
下一篇:基于RlTOS和ISP功能数字仪表系统设计实现

推荐阅读最新更新时间:2024-03-16 12:52

STC单片机内部EEPROM的使用-记录上电次数
大多数情况下,大家存储掉电的数据都是用的24C02,在一些需要考虑成本的场合,内部的EEPROM也是可以考虑使用的,这个程序介绍一下,STC内部的EEPROM的使用,程序的功能是记录上电次数,然后加1,在数码管上显示出来。 /******************************************************************************* * 文件名: 数码管显示上电计数值 * 描 述: 上电计数 * 功 能:数码管的使用 11.0592MHZ * 作 者:大核桃 * 版本号:1.0.1(2017.05.23) ************************************
[单片机]
基于MCS-51单片机使用定时器编写时钟程序(汇编)
1、仔细想想还不错的思路 用定时器写一个时钟程序,想想都觉得头大。撇开其他花里胡哨的功能,先从最基本的时间显示开始吧,剩下的以后再说。 我们一般希望的是时钟能不停地计时,在需要的时候调用显示来显示当前时间,同时也可以干其他事,所以当然不能用延时来写,不然这个时钟除了只能显示时间之外就是个废物了。 我们希望每定时到一秒的时候来个中断,在中断里使存储里的时间序列加一秒(时间序列以时分秒各一个字节的方式存储)。51单片机定时器0方式1的最大定时时间是216=65536μs,也就是大约65ms出头。但我们可以每50ms来一次中断,中断到第20次的时候时间序列加一秒;或者每20ms来一次中断,到第50次的时候时间序列加一秒。一般来说
[单片机]
基于<font color='red'>MCS-51</font>单片机使用定时器编写时钟程序(汇编)
51单片机——IIC、EEPROM数据存储 C语言入门编程
IIC: I2C(Inter-Integrated Circuit)总线是由 PHILIPS 公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单, 器件封装形式小,通信速率较高等优点。I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。由于其管脚少,硬件实现简单,可扩展性强等特点,因此被广泛的使用在各大集成芯片内。 (1)它是一个支持多设备的总线。“总线”指多个设备共用的信号线。在 一个I2C通讯总线中,可连接多个I2C通讯设备,支持多个通讯主机及多个通 讯从机。 (2)一个I2C总线只使用两条总线
[单片机]
51单片机——IIC、<font color='red'>EEPROM</font>数据存储 C语言入门编程
单片机软件抗干扰的这几种办法
1、软件抗干扰方法的研究 在工程实践中,软件抗干扰研究的内容主要是:一、消除模拟输入信号的噪声(如数字滤波技术);二、程序运行混乱时使程序重入正轨的方法。本文针对后者提出了几种有效的软件抗干扰方法。 (1) 指令冗余 CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,误将操作数当作操作码,程序将出错。若“飞”到了三字节指令,出错机率更大。 在关键地方人为插入一些单字节指令,或将有效单字节指令重写称为指令冗余。通常是在双字节指令和三字节指令后插入两个字节以上的NOP。这样即使乱飞程序飞到操作数上,由于空操作指令NOP的存在,避免
[单片机]
STM32L0 系列 EEPROM 读写,程序卡死?
前言 使用 STM32L051 和 STM32L071 替换 STM32 有一年多了,替换完成以后还根据自己产品的需求写了几篇记录博文: STM32L0 系列产品都自带了 EEPROM ,使用保存数据起来特别方便,因为写 EEPROM 并不需要删除一篇扇区,可以直接在指定地址写入。 但是最近有某个产品反馈,有时候会莫名其妙的“死机”,这是最直观的现象: 如果在初次配置完成(配置需要对 EEPROM 进行读写)后上电没问题,那么就一直没问题,如果断电重启,有可能遇到问题,遇到问题也是可以靠多重启几次解决(上电会读取 EEPROM 的数据)。 这个问题花了一些时间,其实就是 EEPROM 的读写问题。 我更新了好多次可以看出来,E
[单片机]
可处理高数据率的创新型串行总线测试方法
在高端运算(先进的微处理器)和消费电子(图形和游戏芯片组)设备中采用的半导体器件一般通过高速串行总线接口提供高达6.4Gbps的数据率,例如PCI Express 和 HyperTransport。根据2005年的国际半导体发展路线图(ITRS),到2010年,10Gbps以及更高速率的接口将被广泛采用。而业界一些专家预测在10年内,数据率将高达20Gbps,因此一些基本方法必须改变。远端环回是一种极具成本效益的创新技术。通过有效地帮助半导体厂商降低测试成本并缩短新一代半导体的开发周期,远端环回必将加速上述发展趋势。 目前高性能集成电路方面正在发生的架构改变将影响半导体产品的方方面面,包括从设计到终测和封装。这
[测试测量]
可处理高数据率的创新型<font color='red'>串行总线</font>测试方法
MCS-51单片机的指令时序
时序是用定时单位来描述的,MCS-51的时序单位有四个,它们分别是节拍、状态、机器周期和指令周期,接下来我们分别加以说明。 节拍与状态: 我们把振荡脉冲的周期定义为节拍(为方便描述,用P表示),振荡脉冲经过二分频后即得到整个单片机工作系统的时钟信号,把时钟信号的周期定义为状态(用S表示),这样一个状态就有两个节拍,前半周期相应的节拍我们定义为1(P1),后半周期对应的节拍定义为2(P2)。 机器周期: MCS-51有固定的机器周期,规定一个机器周期有6个状态,分别表示为S1-S6,而一个状态包含两个节拍,那么一个机器周期就有12个节拍,我们可以记着S1P1、S1P2……S6P1、S6P2,一个机器周期共包
[单片机]
<font color='red'>MCS-51</font>单片机的指令时序
9.STC15W408AS单片机EEPROM
STC15系列单片机内部集成了大容量的EEPROM,与其程序空间是分开的。利用ISP/IAP技术可将内部Data Flash当EEPROM,擦写次数在10W次以上。EEPROM可分为若干个扇区,每个扇区包含512字节。使用时,建议同一次修改的数据放在同一个扇区,不是同一次修改的数据放在不同扇区,不一定要用满。数据存储器的擦除操作是按扇区进行的。 EEPROM可用于保存一些需要在应用中修改并且掉电不易丢失的参数数据。在用户程序中,可以对EEPROM进行子节读/字节编程/扇区擦除操作。在工作电压Vcc偏低时,建议不要进行EEPROM/IAP操作。 一、IAP及EEPROM相关寄存器 1.1 数据寄存器IAP_D
[单片机]
9.STC15W408AS单片机<font color='red'>EEPROM</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved