串行E2PROM 24LC65在单片机中的应用

发布者:BlissfulDreams最新更新时间:2012-02-18 来源: 国外电子元器件 关键字:E2PROM  24LC65  串行接口  I2C总线  串行存储 手机看文章 扫描二维码
随时随地手机看文章

1. 概述

  24LC65是目前容量较大的一种串行E2PROM 芯片,具有8kB的存储容量,体积小,功耗低,可掉电保护。AT89C52单片机亦具有8kB内部ROM,同样具备低功耗和控制功能强等特点,由两者构成的单片机小系统硬件开销少,数据可串行传送,功耗低,非常实用。但是,读、写24LC65的程序编写却比较麻烦,本文将介绍对其编程的方法,并介绍采用子程序结构编写的已通过的写、读24LC65的应用编程。

2. 24LC65与单片机的连接
2.1 24LC65的引脚功能

  24LC65采用8脚DIP封装,引脚功能如下:
  1~3脚(A0、A1、A2)为三位地址输入端;
  4脚GND为接地端;
  5脚SDA为二进制数据输入输出端;
  6脚SCL为时钟输入端;
  7脚NC悬空;
  8脚VCC为5V正电源。

2.2 24LC65与单片机的连接

  连接电路如图1所示,图中共接有8片24LC65芯片,芯片的三位地址A2、A1、A0接成8种组态,由A2、A1、A0排列组成8个片选地址,因此在两线上最多可选用8片,可寻址64kB存储空间,每片寻址8kB,其中,1#芯片地址范围是0000H~1FFFH,8#芯片地址范围是 E000H~FFFFH。SDA为串行数据输入输出线,SCL是时钟输入端,每次访问24LC65之前,必须执行启动I2C数据总线操作,每次结束访问时,也必须执行停止I2C数据总线操作,其操作时序由SCL与SDA的关系确定,如图2的示,可以看出,当SCL为高电平时,SDA由高变低时启动I2C总线,而SDA由低变高时,停止总线操作。若启动总线为读操作,则在SCL脉冲的下降沿读出1 bit的数据,若启动写操作,则在SCL脉冲的上升沿写入1 bit 的数据。

3. 数据格式

  对E2PROM 24LC65每次写一个字节操作的数据格式由4个字节构成。第1字节为: 

 1

0

1

0

A2

A1

A0

R/W

  其中A2、A1、A0为地址位,R/W为读写位,R/W=1,读E2PROM操作;R/W=0,写E2PROM操作。

  第2字节为:

X

X

X

A12

A11

A10

A9

A8

  其中,×为任意,A12、A11、A10、A9、A8为E2PROM 24LC65的高5位地址。

  第3字节是E2PROM 24LC65的低8位地址A7~A0。第4字节才是8位数据。注意,每个字节后紧跟一个回答(ACK)信号。

4. 写24LC65程序

  用MCS-51单片机的指令编写对24LC65写一字节的子程序是关键,主程序连续调四次便可实现对24LC65写一字节数据的目的。假设待写入字节在单片机内字节地址分别是6FH、6EH、…、68H,并分别存放在待写入字节的D7、D6、…、D0位,作为调用写一字节子程序的入口参数。由主程序启动,并停止总线。其程序分别如下:
  ;主程序启动与停止总线
  SETB P3.1 ;SCL=1
  SETB P3.0 ;SDA=1
  CLR P3.0 ;SDA=0,启动总线
  ┊
         ┊
  CLR P3.0
  SETB P3.1
  SETB P3.0 ;停止总线操作
  ; 写一字节的子程序
  MOV C,6FH ;D7位送给进位C
  CLR P3.1
  MOV P3.0,C
  SETB P3.1;写入D7位
  CLR P3.1
  MOV C,6EH ;D6位送给进位C
  MOV P3.0,C
  SETB P3.1 ;写入D6位
  CLR P3.1
  MOV C,6DH ;D5位送给进位C
  MOV P3.0,C
  SETB P3.1 ;写入D5位
  CLR P3.1
  MOV C,6CH
  MOV P3.0,C
  SETB P3.1 ;写入D4位
  CLR P3.1
  MOV C,6BH
  MOV P3.0,C
  SETB P3.1 ;写入D3位
  CLR P3.1
  MOV C,6AH
  MOV P3.0,C
  SETB P3.1 ;写入D2位
  CLR P3.1
  MOV C,69H
  MOV P3.0,C
  SETB P3.1 ;写入D1位
  CLR P3.1
  MOV C,68H
  MOV P3.0,C
  SETB P3.1 ;写入D0位
  CLR P3.1
  NOP
  SETB P3.1 ;写一字节结束
  CLR P3.1  ;ACK
  RET

5. 读24LC65程序

  读24LC65程序中既有写控制字和写地址操作,又有读数据的操作,其中,写控制字和写地址操作相同于写24LC65程序,即前三个字节相同,只不过第三字节结束后要停止总线操作。第四字节重新启动总线,送读命令。只有第五字节才是读24LC65的操作。读24LC65的程序如下:
    MOV R7,#08H
READ:SETB P3.1 ;读一字节于A中
     CLR P3.1  ;移出一位
    MOV C,P3.0 ;移出一位传给进位C
    RLC A
     DJNZ R7,READ
    SETB P3.1
    CLR P3.1 ;ACK
    CLR P3.0
    SETB P3.1
    SETB P3.0 ;停止总线
    RET
  该程序在实际使用中运行可靠,实用性强。如果希望增加存储容量,可以另选单片机的两条I/O线,同样可以连接8片24LC65芯片,组成另一64kB的串行E2PROM。

关键字:E2PROM  24LC65  串行接口  I2C总线  串行存储 引用地址:串行E2PROM 24LC65在单片机中的应用

上一篇:基于AT89C51单片机的电子计价秤的设计与实现
下一篇:用AT89C2051实现电话远程控制家用电器

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

中频解调电路中的I2C总线接口电路
I2C 总线 (inter integrated circuit bus)由飞利浦公司于20世纪80年代研究开发。I2C 总线 接口 电路 其简单性和有效性而被广泛用于连接微处理器及外围设备。在电视中频解调 电路 中,二线制的I2C总线 接口 电路使得主 控制 器只需要2个引脚便可实现对解调电路所有功能的 控制 ,且总线接口集成在器件中,各电路单元之间只需要最简单的连接,大大简化了电路板上的走线,减少了电路板面积,提高了其可靠性,降低了成本。 在该中频解调的接口电路中,基于I2C总线传输协议,通过对状态机与控制逻辑的优化设置,只需要1个3位的状态机便可实现电路的使能、启动、终止、应答、复位、选址等功能,电路得到了最优化,且通过地
[模拟电子]
(2)I2c总线SDA\SCL以及开始终止条件
I2C只用两条线(SDA和SCL)在连接到总线上的设备之间传送数据.每一个设备都由唯一的地址来识别(不管是微处理器、LCD驱动器、存储器或者键盘接口),并且可以依照设备的功能作为发送器或者接收器使用.LCD驱动器可能只是个接收器,而存储器可以发送和接受数据.除了发送器和接收器,当传送数据时设备还可以作为主机或者从机.主机就是初始化数据传输和产生时钟信号的设备,在那个时刻,任何被寻址的设备都是从机. I2C总线是一个多主机总线.意味着可以连接多个可以控制总线的设备到总线上.主机通常是微控制器,我们可以考虑以下两个连接到总线上的微处理器之间的数据传输的情况. 这个例子中突出了I2C总线中的主从和接收器-发送器之间的关系.注意这些关
[单片机]
(2)<font color='red'>I2c总线</font>SDA\SCL以及开始终止条件
可编程数字电位器在AVR单片机中的应用
1 引言    AVR 嵌入式单片机具有丰富的硬件、软件资源,其中的串行I2C接口能满足很多应用场合的要求,两个 AVR 单片机通过I2C总线直接连接就可实现单片机相互通信; AVR 单片机还可以和任何具有I2C总线接口的外设直接连接而无须其它硬件电路支持。而X9221系列可编程数字电位器在智能测试设备上应用非常广泛,通过I2C总线可以简单地构成单片机与各种外设之间乃至与计算机之间的通信,建立友好的人机界面联系。硬件设计简单、灵活,只需要将所有设备的SDA和SCL信号线分别并联在一起并加上拉电阻即可,有助于提高设备的自动化水平、可靠性、稳定性及电气装配的工艺性。 AVR 单片机和X9221系列可编程数字电位器都有内置的E2ROM
[单片机]
AT24C02串行E2PROM的读写
I2C总线是一种用于IC器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件:不管是单片机、存储器、LCD驱动器还是键盘接口。   1.I2C总线的基本结构 采用I2C总线标准的单片机或IC器件,其内部不仅有I2C接口电路,而且将内部各单元电路按功能划分为若干相对独立的模块,通过软件寻址实现片选,减少了器件片选线的连接。CPU不仅能通过指令将某个功能单元电路挂靠或摘离总线,还可对该单元的工作状况进行检测,从而实现对硬件系统的既简单又灵活的扩展与控制。I2C总线接口电路结构如图1所示。   2.双向传输的接口特性 传统的单片机串行接口的发送和
[单片机]
AT24C02<font color='red'>串行</font><font color='red'>E2PROM</font>的读写
普通彩电与I2C总线控制彩电的差异分析
  I2C总线的概念来源于计算机数据传输技术,但随着电子技术的不断发展,I2C总线技术已经广泛地用于彩色电视领域。这种新技术可以完成彩色电视机的各种控制功能,能方便地进行各种模拟量的调整和控制,而且在整机电路元件数量大大减少的基础上,降低了生产成本,提高了整机的可靠性,降低了故障率。因此,在销售价格和产品质量方面深受群众的欢迎;在生产成本、产品设计、测试调整及更新换代等方面又倍受电视机生产厂家的青睐。应用I2C总线控制技术和单片彩色电视机机芯的电路结构已经成为本世纪初彩色电视机发展的基本特征。根据家用电器的一般使用及维修规律可知,已经推广使用3年有余的I2C总线控制彩电已经开始进入检修期,然而,习惯采用传统技术维修普通遥控彩电的人总
[嵌入式]
AVR单片机的调频立体声收音机设计
引言 早期的数字FM处理芯片TEA5767由Philips公司开发并被广泛地使用,但该芯片需要外加音频放大电路才能驱动耳机。鉴于此,国内锐迪科微电子公司独立开发了一颗具备高接收灵敏度的FM立体声数字芯片RDA5807P,具有自动搜台、重低音、静音、休眠、直接驱动耳机等优异的性能。本文介绍用RDA5807P芯片设计和制作了一款带遥控功能的收音机。 1 收音机总体设计方案 收音机的总体设计框图如图1所示。本收音机采用单节3.7 V、容量1500 mAh的锂电池作力电源,在使用寿命期内可以用手机充电器反复对它进行充电,使用非常方便。采用低功耗的AVR单片机ATmega8L作为微控制器,负责处理和协调各模块电路的工作,ATmega8
[单片机]
AVR单片机的调频立体声收音机设计
通过MSP430的IO口模拟I2C总线对AT24C25进行读写程序
再通过微处理器I/O口模拟I2C总线对AT24C进行读写之前应注意一下两个问题: 一、微处理器的两个模拟I/O口在和SDA,SCL连接时必须使用上拉电阻。 一、I2C总线空闲的时候,两条信号线应该维持高电平。否则,上拉电阻上会有耗电。特别是在上电过程中,I/O线上电平也应保持在高电平状态。也就是说:当Master的I2C使用的是I/O软件模拟时,一定要保证该两个I/O上电默认均为输入(或高阻)或者输出高电平,切不可默认为输出低电平。I/O默认为输入时,可以通过外部上拉电阻将I2C信号线拉至高电平。 该程序通过调试,可以直接应用,程序如下: 文 件 名 : AT24C256.S43.C * 功能描述 : I/O模拟I2C时序读
[单片机]
AVR单片机串行接口SPI接口应用设计
  使用的同步串行三线SPI接口,可以方便的连接采用SPI通信协议的外围或另一片AVR单片机,实现在短距离内的高速同步通信。ATmega128的SPI采用硬件方式实现面向字节的全双工3线同步通信,支持主机、从机和2种不同极性的SPI时序,通信速率有7种选择,主机方式的最高速率为1/2系统时钟,从机方式最高速率为1/4系统时钟。   ATmega128单片机内部的SPI接口也被用于程序存储器和数据E2PROM的编程下载和上传。但特别需要注意的是,此时SPI的MOSI和MISO接口不再对应PB2、PB3引脚,而是转换到PE0、PE1引脚上(PDI、PDO),其详见第二章中关于程序存储器的串行编程和校验部分的内容。   ATmega
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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