EEPROM-24LC512 family

2024-06-07 00:08
文章标签 family eeprom 24lc512

本文主要是介绍EEPROM-24LC512 family,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

I2C Serial EEPROM Family 

 

一 功能介绍

1、能页操作,每页可达128字节。

2、具有的功能地址线,允许8个器件挂在同一总线上。高达4MBit的地址空间(64k x 8=512bit | 512bit x 8 = 4Mbit)

3、在512k范围内,可随机读和顺序读。

4、板级供电电压范围 1.7V to 5.5V

 

 

二 引脚描述

 引脚名

功能

A0

芯片选择(用户可配置)

A1

芯片选择(用户可配置)

A2

芯片选择(用户可配置)

NC

未连接

VSS

SDA

串行数据

SCL

串行时钟

WP

写保护输入

VCC

电源

 


 

2.0  A0A1 AND A2 芯片地址输入

 

n芯片地址引脚允许8个芯片挂在同一条总线上。当引脚的逻辑电平与芯片内部相应的设备地址相同时,芯片使能。

 

 芯片引脚的输入使能时 VCC VSS

 

n在大多数的应用中,地址线是被硬件拉高和拉低的。在那些引脚受 microcontroller 和可编程器件控制的应用中,在访问该EEPROM芯片之前,EEPROM的引脚要先拉高或拉低。

 

2.1  Serial Data (SDA)

 

n 该双向引脚是用来传输数据和地址的。 该引脚是内部开漏,所以 SDA引脚要接一个上拉电阻到VCC( 典型的是 10kohm/100khz, 2kohm/400Khz,1Mhz).

 

n 在数据传输中,SDA只有在SCL线为低时才发生改变。在 SCL线为高时SDA发生改变则被认为是开始或停止。

 

 

2.2  Serial Clock (SCL)

 

数据同步时钟

 

2.3  Write-Protect(WP) 写保护

 

该引脚只能连接 VCC 或者 VSS

 

 当连接VCC时,允许对芯片写操作,当连接VSS,对芯片写操作禁止。该引脚对芯片读操作没有任何影响。

 

 

三 功能描述

24XX512支持双向2线制总线和数据传输协议。在总线数据发送数据的成为发送方,接收数据的为接收方。

 

24XX512为从设备时,串行时钟(SCL)由主设备产生,来控制总线的访问和产生开始和结束条件。

 

主设备和从设备都可以作为接收方和发送方,但是只有主设备才能决定处于那种模式。

 

 

四 总线特点

总线协议

   1、总线在非忙状态下数据传输才会启动。

   2、数据传输过程中,当时钟线为高时,数据线要保持 stable。在时钟线为高时,数据线状态发生改变则被认为是开始或结束条件。

 

总线不忙【 Bus Not Busy (A)

数据线和时钟线为高电平

 

开始数据传输【Start Data Transfer  (B)

当时钟线为高时,数据线由高到低则表示开始数据传输。所有的命令都需要该开始条件。

 

 

停止数据传输【Stop Data Transfer (C)

当时钟线为高时,数据线由低到高则表示开始数据传输。所有的操作都需要该停止条件。

 

数据有效【Data Valid (D)

启动条件产生后数据开始传输,停止条件发生时则停止数据传输。

在时钟线为高电平时保持stable

在时钟线为低时发生改变。每个时钟脉冲传输一位数据。

 

 

 

应答信号

每个选中的从设备在接收完一个字节的数据之后都会产生一个应答信号。所以,每个主设备必须产生一个额外的时钟脉冲来匹配该应答位。在该时钟脉冲的高电平器件,SDA要保持stable low。建立时间和保持时间都要考虑。

 

在读操作时,主设备会发出一个数据结束信号给从设备,告知从设备不需在从设备 clock out的最后一个字节产生应答信号。在这种情况下,从设备(24xx512)会拉高数据线从而使从设备发出停止条件(有点没明白)。

 

 

应答开始:发送方必须释放SDA线,允许接收方将SDA拉低来产生应答信号。

应答结束:接收方必须释放SDA线,允许发送方继续发送数据。

 

 

 

 

 

五 设备寻址

开始条件产生后低一个接受的字节就是控制字。控制字包括4个控制码,对于24XX5124个控制位为‘1010’意味着读写操作。控制码之后的三个位就是地址位 A2A1A0,当A2A1A0与引脚逻辑状态一致,则该芯片就被选中可以访问了。地址之后就是一个读写控制位,‘0’为写,‘1’为读。如图所示

 

 

再之后的两个字节就是读写第一个字节的地址。

 

 

 

 

六 多器件的连续寻址

前面说过,三个地址为可以扩展到4Mbit的寻址空间,我们可以同过复用A2A1A0引脚来达到连续寻址这4Mbit空间。

 

可以把A0当做A16A1当做A17A2当做A18来实现。所以在这种方式下,对于当个器件访问时,如果地址超过了其当个器件的地址范围,我们就不能溢出读取了(即如果是64kb空间,当我访问的地址是65k时,如果是对单个器件而言,它实际访问的地址就是3kb地址,而多器件连续访问的就是65kb)---这种仅仅是从逻辑上来考虑的。

 

 

 

 

 

七 写操作

7.1  字写

首先是启动信息->控制字->地址高字节+地址低字节->这设备发送数据。

 

 

 

当WP为高时,如果对设备进行写操作,24XX512会发出应答信号,但不会产生写周期。而且24xx512将又处于接收下一个命令控制字状态。

 

 

7.2  页写(page write)

和字写操作顺序是一样的,只是在页写时,当传送完一个字节后,主设不是发出一个结束信号,二是继续传送另外的127个字节。当24xx512接收完一个数据之后,内部的地址指针会自动加1

 

如果主设想传送多与一页的数据时,必须要在一页传送完成后产生一个停止位。不然的话,内部地址指针会溢出计数(roll over),这样的话之前写进去的数据就会被重写掉。 

 

WP为高时,如果对设备进行写操作,24XX512会发出应答信号,但不会产生写周期。而且24xx512将又处于接收下一个命令控制字状态。

 

 

7.3  写保护

写保护引脚会在每个命令字的停止位时进行抽样。在停止位后改变WP PIN状态不会对写周期的执行产生影响。

 

 

 

7.4  应答轮询机制

如果使用I2C接口电路,可以路过。

 

 

八 读操作

读操作和写操作基本上是一致的,除了控制自理RW位为1之外。

有三种基本的读操作类型:当前地址读,随机读,顺序读。

 

8.1  当期地址读

24XX512颞部有一个地址指针,指向最后一个访问字节的地址,且访问完一个字节后能够自增1。因此,如果先前的访问地址是nlegal address),下一个当前地址就是 n+1 

 

一旦接受到控制字且 RW1,即读操作时,24xx512就会发出一个应答信号和8位数据。主设可以通过不发送应答信号而产生一个停止条件来终止连续传输。

 

 

 

8.2  随机读

 

首先进行写操作,将随机读取的第一个字节地址发送到24xx512

然后再进行读操作。

主设在接收完最后一个数据之后同过不发应答信号而是发出停止信号来停止连续传输。

 

 

8.3  顺序读

与随机读取不同的是,在传送完第一个字节之后,主设会发出应答位,从而使24xx512继续传输下一个数据。主设在接收完最后一个数据之后同过不发应答信号而是发出停止信号来停止连续传输。

 

为了支持顺序读,24xx512内部有个地址指针,能够在每次读取操作完成后自增1。这个地址指针能够在一次操作中寻址整个存储空间。 The internal Address Pointer will automatically roll over from address FFFF to address 0000 if the master acknowledges the byte received from the array address FFFF


这篇关于EEPROM-24LC512 family的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1037621

相关文章

基于 rt-thread的I2C操作EEPROM(AT24C02)

一、AT24C02 The AT24C01A/02/04/08A/16A provides 1024/2048/4096/8192/16384 bits of serial electrically erasable and programmable read-only memory (EEPROM) organized as 128/256/512/1024/2048 words of 8 b

EEPROM 扫盲

随笔记录 1. 介绍 EEPROM,即电可擦可编程只读存储器。它是一种非易失性存储器,允许在不施加高电压的情况下进行擦除和重新编程操作。 2、特点 非易失性 即使在电源关闭后,存储在 EEPROM 中的数据也不会丢失。这使得它非常适合用于存储需要长期保存的配置信息、校准数据等。可擦写性 可以通过特定的编程方法对其进行擦除和重新编程,这为设备的参数调整和升级提供了便利。字节级可寻址 能够

关于STC-ISP软件选项“下次下载用户程序时擦除用户EEPROM区”的质疑

1.以前,在用STC-ISP软件下载代码时,该选项一般都默认勾选!见图1;因没用到该功能无视; 2.近日,首次下载需写入一些用户核心数据,以后谁升级代码下载都不能查看和更改这些数据! 3.于是:发现个奇怪的问题!就是第一次写入时,默认勾选没发现问题;但第二次升级代码下载时,取消了这个勾选应该是对的!但问题来了:第二次下载后原用户数据居然擦除了! 4.原来:该选项设置后,第一次下载时无效!要到

集成电路学习:什么是EEPROM电可擦除可编程只读存储器

EEPROM:电可擦除可编程只读存储器         EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦除可编程只读存储器)是一种非易失性存储器,具有电可擦写、可编程和只读的特性。以下是关于EEPROM的详细解释: 一、EEPROM的定义与特点 EEPROM的定义:EEPROM是一种允许通过电信号进行擦除和重新编程的

57.基于IIC协议的EEPROM驱动控制(4)

(1)顶层代码: module IIC_EEPROM(input wire clk ,input wire reset_n ,input wire key_r ,input wire key_w ,output

55.基于IIC协议的EEPROM驱动控制(2)

升腾A7pro的EEPROM芯片为24C64芯片,器件地址为1010_011。         (1)Visio整体设计视图(IIC_SCL为250KHz,IIC_CLK为1MHz,addr_num为1,地址字节数为2字节,addr_num为0,地址字节数为1字节): (2)IIC_ctrl模块状态转移图: (3)按键消抖模块代码及注释解析: module key_

中微8S6990 EEPROM踩坑记录

中微8S6990 EEPROM内容丢失解决记录 问题描述: 问题程序如下: void temp_remember(uint16_t temperature,uint16_t address_H,uint16_t address_L){uint8_t temp,temp1 = 0;temp = temperature>>8;temp1 = temperature;FLASH_UnLock()

【TB作品】PIC16F1719单片机,EEPROM,PFM,读写,PIC16F1718/19

对于PIC16F1719单片机,没有直接的EEPROM,而是使用高耐久度的程序闪存(PFM)作为非易失性数据存储区域。这个区域特别适合存储那些需要频繁更新的数据。读写这个内存区域需要操作一些特殊功能寄存器,比如用于地址的PMADRH:PMADRL和用于数据的PMDATH:PMDATL。 执行从闪存中读取数据的操作步骤如下: 将目标地址写入PMADRH:PMADRL寄存器对。清除PMCON1寄存

【GD32F303红枫派使用手册】第二十一节 I2C-EEPROM读写实验

21.1 实验内容 通过本实验主要学习以下内容: AT24C16 EEPROM的工作原理; IIC模块原理以及IIC驱动原理。 21.2 实验原理 21.2.1 AT24C16 EEPROM的工作原理 下图为AT24CXX系列EEPROM相关参数,由该图可知,AT24C16的存储容量为16Kbit,共2048字节,共128页,每页为16字节。 由下图可知,AT24C16由8块

ESP32-C3开发之旅 基础篇④ ESP32-C3与EEPROM

一、简介 EEPROM(Electrically Erasable Programmable Read-Only Memory),电可擦可编程只读存储器——一种掉电后数据不丢失的存储芯片。 二、原理 EEPROM库在Arduino中经常用于存储设定数据。当然基于Arduino的ESP32-C3也不例外。     写入操作是通过commit将flash eeprom地址的4K 存储内容删除后才