0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MAX7651/MAX7652 12位数据采集系统与24C02 2线串行EEPROM接口

星星科技指导员 来源:ADI 作者:ADI 2023-03-01 14:18 次阅读

本文介绍将MAX7651和MAX7652 12位数据采集系统连接至24C02 2线串行EEPROM所需的特定硬件描述和软件程序。提供了详细的软件代码。由于MAX7651/52基于标准8051处理器内核,因此此处提供的信息对于任何基于8051的标准设计都很有用。

24Cxx 系列 2 线串行 EEPROM 广泛用于 8051 微处理器系统。虽然MAX7651/MAX7652闪存可编程12位数据采集系统具有16K内部闪存,但仍有许多“传统”产品使用小而廉价的外部存储器。

本应用笔记提供了基本的2线写和读软件子程序。可以轻松修改它们,以满足EEPROM的附加功能,例如存储器保护和组寻址。

24C02串行EEPROM有许多衍生产品,其中包括额外的存储器和页面寻址。24C02被广泛使用,是本例中使用的部件。其他派生部件可以通过稍作修改来使用此代码。

EEPROM信号和定时

24Cxx 系列使用两条 I/O 线进行接口:SCL(串行时钟)和 SDA(串行数据)。SCL 边缘具有不同的功能,具体取决于是读取设备还是写入设备。将数据时钟输入器件时,时钟的正边沿锁存数据。负时钟将时钟数据边缘出器件。

SDA信号是双向的,并且物理上是漏极开路,因此多个EEPROM或其他器件可以共享引脚。SCL和SDA都必须从外部拉高。

EEPROM使用的协议部分基于EEPROM发送的ACK(确认)位(如果已收到发送给它的数据)。所有地址和数据均以 8 位字发送。EEPROM在第九个时钟周期内将ACK作为低位周期发送。EEPROM在SCL和SDA引脚上寻找特定的转换,以鉴定读写。

SDA 引脚上的数据可能仅在 SCL 为低时更改。SCL 高电平期间的数据更改指示启动或停止条件。START 条件是 SDA 的高到低转换,SCL 高。所有数据传输都必须以 START 条件开头。

停止条件是 SDA 的低到高转换,SCL 高。所有数据传输必须以 STOP 条件结束。读取后,停止将EEPROM置于待机电源模式。有关启动和停止条件,请参阅图 1。

poYBAGP-7iGAecWXAAAJw91Em3Q571.gif

图1.启动和停止条件。

设备寻址

24C02 具有 3 个物理引脚,分别指定为 A2、A1 和 A0,它们连接到逻辑 1 或 0 电平。这允许八个唯一的硬件地址,因此多达八个 24C02 可以共享 SCL 和 SDA 线路而不会发生冲突。有一个内部地址比较器,用于查找主控制器发送的地址与 24C02 的唯一 7 位地址之间的匹配,该地址部分由 A2、A1 和 A0 确定。请参阅下面的表 1。

MSB 低音水平
1 0 1 0 答2 答1 答0 R/~W

设备地址在启动条件后立即发送。前四位是序列“1010”,这是一个简单的“噪声滤波器”,可防止线路上的随机噪声突发访问设备。发送的最后一个位是 1 表示读取,0 表示写入。下面的代码示例用于随机读/写操作。该部件还可以执行页面写入/顺序读取,只需稍作代码修改。有关更多信息,请参见 24C02 数据手册。

字节写入内存

字节写入序列如图 2 所示。EEPROM在收到START条件和设备地址后,如果设备地址与其自己的唯一地址匹配,则发送ACK。MAX7651等待ACK,如果ACK不存在,则中止通信。接下来,发送一个 8 位字节地址,然后发送另一个 ACK。MAX7651发送8位数据字节,等待第三个ACK,并发送STOP条件。

poYBAGP--PuARlYgAAAhZfYxOX8275.png

图2.写入操作。

需要注意的是,在收到 STOP 条件后,EEPROM 在内部等待数据存储到其内部存储器阵列中。这可能需要长达 10 毫秒的时间。24C02 将在对内部 EEPROM 进行编程时忽略尝试的访问。可以轮询该部件以完成内部写入周期。这涉及发送另一个 START 条件(也称为重复启动),后跟设备地址字节。请注意,在这种情况下,不会发送 STOP 条件。如果内部编程周期完成,EEPROM 将发送 ACK。MAX7651也可以编程为等待10ms再继续。

从内存读取字节

从 24C02 EEPROM 以随机地址读取字节需要在读取之前执行虚拟写入操作。参见图 3。

顺序为:

启动条件

使用 R/~W = 0 “虚拟写入”命令发送设备地址

等待确认

发送字节内存地址

等待确认

发送重复启动条件

发送 R/~W = 1 的设备地址(读取命令)

等待确认

将8个数据位读取到MAX7651中,MSB优先

无确认

停止条件

这个序列相当复杂!读取所需的 SCL 转换总数为 38。

poYBAGP-7iOAS4vRAAAUh1T56tk663.gif

图3.读取操作。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7151

    浏览量

    162011
  • 微处理器
    +关注

    关注

    11

    文章

    2133

    浏览量

    81423
  • EEPROM
    +关注

    关注

    9

    文章

    928

    浏览量

    80342
收藏 人收藏

    评论

    相关推荐

    EEPROM 24C02的89C52接口问题求助

    我有一个带ATMEL EEPROM 24C52(基于I2C协议)的89C52接口,89C52与
    发表于 07-16 09:55

    基于DSP与MAX147的串行接口电路设计及程序设计

    处理器TMS320C5402之间的串行接口电路设计及程序设计实现了多路数据采集系统系统设计方案
    发表于 05-30 05:00

    基于TC534串行接口的四通道数据采集系统

    口与8031的P1口连接,通过编程8031的I/O接口线来完成对TC534的控制。为将采集至的数据显示出来,系统中还使用了一片带
    发表于 06-13 05:00

    128通道数据采集系统与IBM PC串行端口的接口

    DN35-128通道数据采集系统与IBM PC串行端口的接口
    发表于 06-20 16:45

    LTC1294单片12位数据采集系统

    LTC1294单片12位数据采集系统的典型应用。 LTC1293 / 4/6是一系列数据采集系统,包含一个
    发表于 03-30 10:22

    12位数据采集组件LTC1290

    LTC1290单片12位数据采集系统的典型应用。 LTC1290是一个数据采集组件,包含一个串行I / O逐次逼近型A / D转换器
    发表于 04-01 09:40

    基于MAX125芯片和串行总线实现同步数据采集系统的设计方案

    基于MAX125芯片和串行总线实现同步数据采集系统的设计
    发表于 01-04 06:17

    24C02芯片的相关资料分享

    202007每月一练 的板子上还有一个24C02芯片没有写教程,今天介绍一下24C02这个芯片的驱动方法。串行EEPROM 24CXX是基于
    发表于 01-21 11:51

    MAX7651评估板配置Keil µVisio

    摘要:本文讨论了为MAX7651评估板建立项目和配置Keil µVision® IDE的操作流程,并给出了一个第三方的应用实例:程序编写、编译以及下载到MAX7651评估板的步骤。
    发表于 04-23 14:08 937次阅读
    为<b class='flag-5'>MAX7651</b>评估板配置Keil µVisio

    利用MAX7651实现ADC转换

    摘要:本文提供了利用MAX7651评估板实现模/数转换的源代码和函数。它是MAX7651评估板提供的3个应用例程之一,能够进行写、编译和下载等简单的编程功能。 另请参考:
    发表于 04-23 14:09 771次阅读

    Interfacing the MAX7651/MAX765

    to interface the MAX7651 and MAX7652 12-bit data acquisition system to the 24C02 2-wire ser
    发表于 04-23 15:12 1316次阅读
    Interfacing the <b class='flag-5'>MAX7651</b>/<b class='flag-5'>MAX</b>765

    MAX7651评估板配置Keil μVision IDE

    本文给出了启动项目和为MAX7651评估板配置Keil μVision® IDE软件的分步步骤。本文为MAX7651评估板目标板编写、编译和下载简单程序的三部分应用示例中的第二个。
    的头像 发表于 01-23 14:53 831次阅读
    为<b class='flag-5'>MAX7651</b>评估板配置Keil μVision IDE

    MAX7651的扩展数学子程序集合

    MAX7651闪存可编程12位集成数据采集系统使用8位CPU内核进行所有操作。在某些情况下,8 位分辨率不足以进行数据操作。一个明显的例子是
    的头像 发表于 02-21 10:48 377次阅读

    SPI外设与MAX7651处理器的接口

    本文介绍如何将 GPIO 端口连接到 SPI 外设。它定义了SPI协议的基础知识,信号和SCK信号的四种传输变体。包括一个软件程序,用于使用MAX7651实现SPI接口MAX12是一种闪存可编程的位集成
    的头像 发表于 02-24 16:22 524次阅读
    SPI外设与<b class='flag-5'>MAX7651</b>处理器的<b class='flag-5'>接口</b>

    SPI外设与MAX7651处理器的接口

    The SPI™总线是许多微处理器外设芯片使用的4线串行通信接口MAX7651微处理器不包括实现接口的专用硬件。但是,图中显示了可以向SPI外设发送和接收
    的头像 发表于 03-28 11:14 647次阅读
    SPI外设与<b class='flag-5'>MAX7651</b>处理器的<b class='flag-5'>接口</b>