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

描述

本文介绍将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。

存储器

图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条件。

存储器

图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。

存储器

图3.读取操作。

审核编辑:郭婷

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分