首页 理论教育 STC15W4K32S4系列单片机应用

STC15W4K32S4系列单片机应用

时间:2023-11-02 理论教育 版权反馈
【摘要】:AT24Cxx系列产品是串行E2PROM存储器,是Philips公司生产的典型I2C总线接口器件,具有掉电记忆功能,广泛应用于汽车电子、水表、电表、煤气表和电视机等电子产品中,用作为数据保存。对于AT24C01/02/04/08/16的E2PROM存储器,对片内存储空间地址采用了一个8位的WordADR字节寻址,因此最大字节寻址范围为256B。按字节写按字节写操作是指向E2PROM存储器内指定的地址单元写入1字节数据的操作。

STC15W4K32S4系列单片机应用

AT24Cxx系列产品是串行E2PROM存储器,是Philips公司生产的典型I2C总线接口器件,具有掉电记忆功能,广泛应用于汽车电子水表、电表、煤气表和电视机等电子产品中,用作为数据保存。

1.AT24Cxx存储器的主要特性

AT24Cxx系列产品是典型的I2C总线接口器件,包含很多种型号,主要特性是:具有字节写入方式和页写入方式,允许在一个写周期内同时对一字节到一页字节数据编程写入,一页的大小取决于片内页寄存器的大小;可用于电擦写,功耗很低,供电电压可在1.8~5.5V之间;1.8V供电时最高传输速率达100kHz,2.7V或5V供电时传输速率达400kHz,AT24C128/256/512在5V供电时最大速率达1MHz;抗干扰能力强,噪声保护施密特触发输入技术和ERS最小达到2000V。AT24Cxx系列产品的主要特性见表12-4。

表12-4 AT24Cxx系列串行E2PROM存储器主要特性一览表

978-7-111-51881-5-Chapter12-40.jpg

(续)

978-7-111-51881-5-Chapter12-41.jpg

2.引脚功能与地址选择

AT24Cxx系列串行E2PROM存储器采用了DIP8封装形式,各引脚功能如下:

A0、A1、A2:地址输入端,三位地址选择线允许在I2C总线上最多可并联8个芯片

SCL:I2C总线的时钟线。

SDA:I2C总线的数据线。

WP:写保护端,当接到VCC时,片内单元被写保护(只读),在实际中可接地。

VCC、GND:电源,可以接3.3V或5V供电。

AT24Cxx存储器含三位地址线,按照Philips公司I2C总线规定分配器件的地址。对于AT24C01/02/04/08/16的E2PROM存储器,对片内存储空间地址采用了一个8位的WordADR字节寻址,因此最大字节寻址范围为256B。然而除AT24C01/02外,其他器件都大于256B,如AT24C08的容量为8kbit共1024B地址空间,应提供210=1024B的寻址空间。因此,必须解决芯片高端地址空间的寻址问题。其解决的办法是:把芯片引脚地址线(A2、A1、A0)作为存储空间的高端页地址(即A8、A9、A10),也就是把器件地址引脚作为片内存储器的高位地址(见表12-5)。当引脚地址作为页地址(或高位地址)后,该引脚在系统中不能再作为器件地址使用。

表12-5 AT24Cxx系列E2PROM的字节地址

978-7-111-51881-5-Chapter12-42.jpg

AT24C32/64/128/256/512/1024的E2PROM存储器,其片内存储空间寻址采用了一个16位的WordADR字节寻址,因此最大字节寻址范围为64KB。器件容量大多在可寻址范围内,AT24C32/64的A2、A1、A0作为器件地址,最多能够在I2C总线上连接8个AT24C32/64;AT24C128/256/512的A1、A0作为器件地址,A2悬空,最多能够连接4个AT24C128/256/512;AT24C1024只有A1作为器件地址,A2、A0悬空不用,最多能连接1个AT24C1024,见表12-5。

3.存储器的写操作

AT24Cxx系列存储器把地址空间按物理分页,支持按页写操作模式,即在一次写操作中可连续写入一页。由于每次写操作之后必须等待新的写周期开始,才能继续对E2PROM进行操作。所以,文件系统采用页写模式可大大提高写文件速度。

对E2PROM读/写数据前,需先发一字节的器件地址以选择芯片进行读/写。器件地址的高4位为固定值1010;A0~A2用于对多个E2PROM进行区分,对AT24Cxx不同型号,当A0~A2用于指示片内物理地址时,相应其值由访问地址决定;当引脚为NC,此时值置0;最后一位为读/写操作位,1表示读操作,0表示写操作。数据通信格式如图12-17所示。

978-7-111-51881-5-Chapter12-43.jpg

图12-17 AT24C64读/写通信格式时序

AT24Cxx系列E2PROM存储器的写操作时序遵循I2C总线的操作时序要求,其写操作包括按字节写和按页写两种方式。(www.xing528.com)

(1)按字节写

按字节写操作是指向E2PROM存储器内指定的地址单元(Addr)写入1字节数据的操作。其数据格式如下:

978-7-111-51881-5-Chapter12-44.jpg

(2)按页写

按页写操作是指向E2PROM存储器内指定的首地址(Addr)开始连续写入n字节页数据的操作。其数据格式如下:

978-7-111-51881-5-Chapter12-45.jpg

AT24Cxx提供的按页写功能,即在存储器中设置的一定容量的数据寄存器,可以一次连续写入整页或不大于页字节的数据(各芯片的页字节大小见表12-4)。有了按页写功能,只要一次写入的字节数不大于页字节的数量,总线对E2PROM存储器的操作可视为对静态RAM的操作,但要求下一次的数据操作在5~10ms之后才可以进行,因此可以用E2PROM存储器代替RAM作为外部数据存储器使用。

在按页写方式时,如果写入数据超出该物理页边界,则超出数据将重新写入到页首地址,即覆盖之前所写数据,形成地址空间“翻卷”现象。因此,如果要写入整页,必须计算好起始地址,当写入地址递增遇到页边界时,可以在软件中进行高位地址的加1操作。

4.存储器的读操作

AT24Cxx系列E2PROM存储器的读操作与写操作基本相同,只是对E2 PROM存储器每读1字节,地址自动加1。由于数据地址寄存器提供的地址空间与已写数据寄存器的空间相同,因此地址指针也会出现“翻卷”现象。在读操作时也要注意页起始地址的计算。

AT24Cxx存储器的读操作为I2C总线的主接收方式,停止前应由主控器发送一个非应答信号。AT24Cxx存储器的读操作分为当前地址读、指定地址读和序列读三种操作方式。

(1)当前地址读操作

当前地址读操作是不指定字节地址(Addr)的读操作,读出的内容为当前地址的数据。当前地址是片内地址寄存器中的内容,每完成1字节操作,地址自动加1。如果当前操作后的地址加1使地址寄存器溢出,则下一个的读操作“翻卷”到该页的第一个地址单元。当前地址读操作的数据格式如下:

978-7-111-51881-5-Chapter12-46.jpg

(2)指定地址读操作

指定地址读操作是指从E2PROM存储器内指定的地址单元(Addr)读出1字节数据的操作。若要给定一个地址,必须先进行1字节地址的写操作,然后再转为读操作,读出1字节。数据格式如下:

978-7-111-51881-5-Chapter12-47.jpg

(3)序列读操作

序列读操作是指从E2PROM存储器内指定的首地址(Addr)开始连续读出n字节数据的操作。其数据格式如下:

978-7-111-51881-5-Chapter12-48.jpg

序列读操作的字节数据首地址也可以是当前地址。

978-7-111-51881-5-Chapter12-49.jpg

序列读操作是读出存储器中当前地址或指定地址的多字节内容,也有可能出现“翻卷”现象。存储器的读/写时序如图12-17所示。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈