EEPROM.
- 格式:doc
- 大小:551.50 KB
- 文档页数:15
eeprom擦写原理EEPROM(Electrically Erasable Programmable Read-Only Memory)是一种常见的非易失性存储器,它具有可擦写的特性,允许数据在不丢失的情况下被重写。
EEPROM的擦写原理是通过使用电场来改变存储单元的状态,从而实现数据的擦除和写入。
EEPROM的存储单元由一对互补的MOSFET(金属氧化物半导体场效应晶体管)构成,其中包含一个浮栅。
在正常操作时,浮栅上的电荷决定了存储单元的状态。
通过改变浮栅上的电荷量,可以实现数据的擦除和写入。
擦除操作是将存储单元的电荷量恢复到初始状态,以便写入新的数据。
擦除过程通常需要高电压,以产生足够的电场来清除浮栅上的电荷。
在擦除过程中,浮栅上的电荷会逐渐被电场击穿,从而导致电荷被释放。
擦除完成后,存储单元的状态被重置为逻辑“1”。
写入操作是将新的数据写入存储单元。
写入操作需要在特定的电压下,将电荷注入到浮栅中。
为了确保只有目标存储单元被写入,周围的存储单元会被屏蔽,以免受到误写的影响。
写入操作完成后,存储单元的状态被重置为新的数据。
EEPROM的擦写原理使得它成为一种重要的存储器,可以用于存储需要频繁更新的数据,如配置信息、用户数据等。
与传统的ROM (只读存储器)相比,EEPROM具有更高的灵活性和可擦写性。
它可以被多次擦写,而不会导致存储单元的损坏。
这使得EEPROM成为许多电子设备中的重要组成部分。
总结而言,EEPROM的擦写原理是通过使用电场来改变存储单元的状态,从而实现数据的擦除和写入。
擦除操作将存储单元的电荷量恢复到初始状态,写入操作将新的数据写入存储单元。
EEPROM的可擦写性使得它在许多应用中都有重要的作用,为电子设备提供了灵活且可靠的数据存储解决方案。
什么是EEPROM?EEPROM 基础知识详解什么是EEPROM?EEPROM 基础知识详解什么是EEPROM?EEPROM 基础知识详解EEPROM (Electrically Erasable Programmable Read-Only Memory),电可擦可编程只读存储器--一种掉电后数据不丢失的存储芯片。
EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。
一般用在即插即用。
EEPROM(电可擦写可编程只读存储器)是可用户更改的只读存储器(ROM),其可通过高于普通电压的作用来擦除和重编程(重写)。
不像EPROM芯片,EEPROM不需从计算机中取出即可修改。
在一个EEPROM中,当计算机在使用的时候是可频繁地重编程的,EEPR OM的寿命是一个很重要的设计考虑参数。
一般用于即插即用(Plug & Play);常用在接口卡中,用来存放硬件设置数据;也常用在防止软件非法拷贝的"硬件锁"上面。
EEPROM-背景知识在微机的发展初期,BIOS都存放在ROM(Read Only Memory,只读存储器)中。
ROM内部的资料是在ROM的制造工序中,在工厂里用特殊的方法被烧录进去的,其中的内容只能读不能改,一旦烧录进去,用户只能验证写入的资料是否正确,不能再作任何修改。
如果发现资料有任何错误,则只有舍弃不用,重新订做一份。
RO M是在生产线上生产的,由于成本高,一般只用在大批量应用的场合。
由于ROM制造和升级的不便,后来人们发明了PROM(Programmable ROM,可编程ROM)。
最初从工厂中制作完成的PROM内部并没有资料,用户可以用专用的编程器将自己的资料写入,但是这种机会只有一次,一旦写入后也无法修改,若是出了错误,已写入的芯片只能报废。
PROM的特性和ROM相同,但是其成本比ROM高,而且写入资料的速度比ROM的量产速度要慢,一般只适用于少量需求的场合或是ROM量产前的验证。
eprom和eeprom的读写过程
EPROM(Erasable Programmable Read-Only Memory)和EEPROM(Electrically Erasable Programmable Read-Only Memory)都是一种非易失性存储器,可以用来存储数据并在需要时进行读取。
两者之间的主要区别在于擦除的方式不同。
1. EPROM的读写过程:
- 写入:EPROM使用特定的设备(EPROM编程器)将数据写入芯片。
设备通过一个特定的电压脉冲将数据编程到存储单元中,并将存储单元的电平状态改变从1变为0,以此来表示数据的存储。
- 读取:EPROM的读取是通过将特定地址的存储单元的电平状态转换为电压信号来完成的。
如果存储单元的电平为1,则读取的电压为低电平;如果存储单元的电平为0,则读取的电压为高电平。
2. EEPROM的读写过程:
- 写入:EEPROM的写入过程与EPROM相比更灵活。
可以通过特定的设备将数据写入EEPROM。
写入时,需要将要写入的地址和写入的数据发送给EEPROM,并将特定的命令信号发送给EEPROM,以启动写入操作。
写入操作完成后,EEPROM中相应地址的存储单元将保存写入的数据。
- 读取:EEPROM的读取过程与EPROM相似,通过将特定地址的存储单元的电平状态转换为电压信号来读取数据。
EEPROM的读取可以直接通过数据总线传输读取命令和地址,不需要额外的编程器。
需要注意的是,在实际操作中使用EPROM和EEPROM时,需要严格按照相关规范和设备说明进行操作,确保正确的读写过程,以免损坏芯片或丢失数据。
eeprom的写入时序EEPROM(Electrically Erasable Programmable Read-Only Memory)是一种非易失性存储器,它可以被多次擦除和写入。
EEPROM的写入时序是指在进行数据写入时所需的操作步骤和时间顺序。
下面是关于EEPROM写入时序的文章:EEPROM的写入时序是指在对EEPROM进行数据写入时所需的操作步骤和时间顺序。
EEPROM是一种非易失性存储器,它可以被多次擦除和写入,因此在实际应用中,对EEPROM进行数据写入是非常常见的操作。
在进行EEPROM写入时,首先需要确定要写入的数据,然后将数据发送给EEPROM,接着进行写入操作。
在进行写入操作时,需要遵循一定的时序要求,以确保数据能够正确地被写入并保持稳定。
通常,EEPROM的写入时序包括以下几个步骤:1. 发送写入命令,首先需要向EEPROM发送写入命令,以告知EEPROM即将进行数据写入操作。
2. 发送地址,接着需要发送要写入数据的地址,以指定数据写入的位置。
3. 发送数据,一旦地址确定,就可以发送要写入的数据。
4. 写入确认,在数据发送完成后,需要发送写入确认命令,以告知EEPROM可以开始写入数据。
5. 写入时间,EEPROM需要一定的时间来完成数据写入操作,这个时间通常是毫秒级别的。
6. 写入完成确认,最后,需要发送写入完成确认命令,以告知系统数据写入已经完成。
在进行EEPROM写入时,以上步骤需要严格遵循,以确保数据能够正确地被写入并保持稳定。
同时,EEPROM的写入时序也受到EEPROM型号和制造商的影响,因此在实际应用中,需要根据具体的EEPROM型号和规格来确定相应的写入时序。
总之,EEPROM的写入时序是进行数据写入时所需的操作步骤和时间顺序,严格遵循写入时序是确保数据写入正确和稳定的关键。
对于工程师和开发人员来说,了解并掌握EEPROM的写入时序是非常重要的,可以帮助他们更好地进行EEPROM的数据写入操作。
eeprom名词解释
EEPROM(Electrically Erasable Programmable Read-Only Memory)是一种可擦
除和可编程的只读存储器,属于非易失性存储器的一种。
它能够在通电和非通电的情况下保持存储的数据,即使在断电的情况下也能保留数据。
EEPROM通过电子
电荷来存储数据,具有读取和写入数据的能力。
EEPROM在计算机和电子设备中广泛应用。
它常用于储存系统的配置信息、
固件升级程序、加密算法、数据存储等需要长期保存且需要经常更新的数据。
相比于传统的ROM芯片,EEPROM的重要特点在于它的可编程和可擦除性。
用户可以通过特定的编程器将数据写入EEPROM,并且可以根据需要随时擦除和重写其中
的数据。
EEPROM的擦除和写入操作是通过在芯片上施加高电压和地电压来实现的。
当需要擦除数据时,EEPROM会根据数据位的0和1在特定的位置存储电子电荷。
在写入新数据时,EEPROM会自动将原有的电子电荷擦除,并将新的电荷存储到
相关位置。
由于EEPROM具有可擦除和可编程的特性,它在电子设备中的应用非常广泛。
它不仅被用于存储固件和程序代码,还可以用于存储关键性数据,如设备ID、序
列号、密钥和密码等。
这些数据的长期保存和保密性对于设备的正常运行和安全性至关重要。
总结来说,EEPROM是一种可擦除和可编程的只读存储器,用于长期保存数
据和程序代码。
由于其高度可靠性和可编程性,EEPROM成为了各类电子设备中
不可或缺的一部分。
EEPROM 原理知识详解EEPROM (Electrically Erasable Programmable Read-Only Memory),电可擦可编程只读存储器--一种掉电后数据不丢失的存储芯片。
EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。
一般用在即插即用。
EEPROM(电可擦写可编程只读存储器)是可用户更改的只读存储器(ROM),其可通过高于普通电压的作用来擦除和重编程(重写)。
不像EPROM 芯片,EEPROM 不需从计算机中取出即可修改。
在一个EEPROM 中,当计算机在使用的时候是可频繁地重编程的,EEPROM 的寿命是一个很重要的设计考虑参数。
一般用于即插即用(Plug Play);常用在接口卡中,用来存放硬件设置数据;也常用在防止软件非法拷贝的”硬件锁”上面。
EEPROM-背景知识在微机的发展初期,BIOS 都存放在ROM(Read Only Memory,只读存储器)中。
ROM 内部的资料是在ROM 的制造工序中,在工厂里用特殊的方法被烧录进去的,其中的内容只能读不能改,一旦烧录进去,用户只能验证写入的资料是否正确,不能再作任何修改。
如果发现资料有任何错误,则只有舍弃不用,重新订做一份。
ROM 是在生产线上生产的,由于成本高,一般只用在大批量应用的场合。
由于ROM 制造和升级的不便,后来人们发明了PROM(Programmable ROM,可编程ROM)。
最初从工厂中制作完成的PROM 内部并没有资料,用户可以用专用的编程器将自己的资料写入,但是这种机会只有一次,一旦写入后也无法修改,若是出了错误,已写入的芯片只能报废。
PROM 的特性和ROM 相同,但是其成本比ROM 高,而且写入资料的速度比ROM 的量产速度要慢,一般只适用于少量需求的场合或是ROM 量产前的验证。
EPROM(Erasable Programmable ROM,可擦除可编程ROM)芯片可重复擦除和写入,解决了PROM 芯片只能写入一次的弊端。
eeprom单元结构EEPROM(Electrically Erasable Programmable Read-Only Memory)是一种主要用于存储数据的电子器件。
它的存储过程是通过电流的方式来擦除和编程,相比于传统的ROM(Read-Only Memory),EEPROM具有可重写的特点,因此被广泛应用于各种电子设备中。
EEPROM的单元结构由位(Bit)和字节(Byte)组成。
在EEPROM 中,位是最小的存储单元,表示二进制的0或1。
而字节则是由8个位组成,可以存储一个字符或者一个整数。
每个EEPROM芯片都由多个单元组成,每个单元都有一个唯一的地址,通过这个地址可以定位到特定的存储单元。
在EEPROM中,单元的地址从0开始递增,可以分别读取和写入每个单元中存储的数据。
在使用EEPROM之前,需要先对其进行擦除操作。
擦除操作会将存储单元中的数据全部清空,使其恢复到初始状态,以便进行后续的编程操作。
在擦除完成后,可以对特定的单元进行编程,将所需的数据存储到相应的位置。
编程操作是通过向EEPROM芯片中写入电流来实现的。
编程时,需要指定一个地址,并将要存储的数据发送给芯片。
芯片会将数据写入到指定地址的存储单元中,从而完成编程操作。
读取操作则是相反的过程,通过指定地址,可以从EEPROM中读取相应的数据。
需要注意的是,EEPROM的写入操作通常比读取操作慢很多。
因为编程操作需要对存储单元进行改变,而读取操作只是简单地读取存储单元中的数据。
因此,在实际应用中,需要根据具体需求来选择合适的读取和编程速度。
总之,EEPROM的单元结构是由位和字节组成的,每个单元具有唯一的地址,可以进行读取和编程操作。
它是一种可重写的存储器,广泛应用于各种电子设备中。
在实际使用过程中,需要注意编程操作的速度和数据的读取。
通过合理使用EEPROM,可以实现数据的存储和读取,为电子设备的功能提供支持。
EEPROM原理知识详解EEPROM是Electrically Erasable Programmable Read-Only Memory 的缩写,即可擦除可编程只读存储器。
它是一种非易失性存储设备,可以在电源断开时保持数据内容不变。
EEPROM是一种用于存储数据的半导体存储设备,它可以被多次编程和擦除。
EEPROM原理知识如下:1.存储结构:2.数据读取:在数据读取时,传输栅允许电流通过,并将浮栅电容的电压提取到位线上,然后通过电路解码器将其转换为数字信号。
通过扫描操作从矩阵中读取指定地址的数据。
3.数据编程和擦除:在数据编程时,电子注入或去注入技术被用来改变浮栅电容中的电荷量。
对于电子注入,通过向传输栅施加一个较高的电压,电子将被注入浮栅中,从而改变其电荷量。
对于电子去注入,一个电压较高的信号被施加到传输栅,以将电子从浮栅中取出,从而改变其电荷量。
编程和擦除过程是通过在特定的时序下施加电压来实现的。
4.工作原理:EEPROM工作的时候,电压控制器将传输栅与浮栅电容分离,让传输栅允许电流通过。
在读取数据时,电压控制器连接传输栅和浮栅电容,以便将浮栅电容的电压提取到位线上。
在编程和擦除操作中,浮栅电容与传输栅被分离,电压控制器会将特定的电压序列施加到浮栅上,以改变电荷量。
通过施加适当的电压,数据可以从浮栅移动到传输栅,或者从传输栅移动到浮栅。
5.存储密度和速度:由于EEPROM的存储单元是矩阵结构,其存储密度相对较高,可以容纳大量的数据。
此外,EEPROM具有较快的速度,因为读取和编程擦除操作可以在不更改其他存储单元的情况下独立进行。
6.电源断电保护:总结:EEPROM是一种非易失性存储器,它使用浮栅电容和传输栅来存储和读取数据。
其通过电子注入或去注入技术来实现数据的编程和擦除。
EEPROM具有较高的存储密度和速度,并且具有电源断电保护功能。
关于EEPROM的应用总结关于EEPROM的应用总结当在程序运行的过程中你希望修改某个变量并且此变量的值在掉电以后不丢失,那么你就可以采用将变量数据写入EEPROM的方式来实现。
什么是EEPROM,即Electrically Erasable ProgrammableRead_Only Memory首先它是一种存储器,并且可以通过高电压来进行反复擦写的存储器。
具有掉电数据不丢失的特点。
比如常用的24C系列,93C系列的器件。
一般这种器件采用I2C的方式与单片机进行通讯,对于这种通讯方式及器件的应用另作总结。
这里主要总结一下,STC12C5204AD芯片内部包含的EEPROM的应用方法。
STC12C5201AD系列单片机内部集成了EEPROM是与程序空间分开的,利用ISP/IAP技术可将内部data flash当EEPROM,擦写10万次以上。
EEPROM可分为若干个扇区,每个扇区包含512字节。
使用时建议同一次修改的数据放在同一个扇区,不是同一次修改的数据放在不同的扇区,不一定要用满。
数据存储器的擦除操作是按扇区进行的。
在程序中可对EEPROM进行字节读写/字节编程/扇区擦除操作。
在工作电压Vcc偏低时,建议不要进行EEPROM/IAP操作。
以免发生数据错误。
应用的步骤1、声明与EEPROM相关的寄存器2、编写EEPROM初始化函数3、编写字节擦除函数4、编写字节编程函数5、编写字节读取函数6、在需要读取EEPROM字节内容时直接调用字节读取函数即可7、在需要进行写EEPROM字节时,先调用字节擦除函数,将字节内容擦除成FFH后,在调用字节编程函数,将数据写入到EEPROM的地址单元中。
与EEPROM应用相关的寄存器符号描述地位地址及符号复位值址IAP_DATA ISP/IAP flash dataregisterC2H11111111BIAP_AD DRH ISP/IAP flashaddress highC3H00000000BIAP_AD DRL ISP/IAP flashaddress lowC4HIAP_CMDISP/IAP flashcommand registerC5HMS1MSIAP_TRIGISP/IAP flashcommand triggerC6HxxxxxxxxxBIAP_CO NTR ISP/IAP controlregisterC7HIAPENSWBS SWRSTCMD_FAILWT2WT1WT0000X000BPCON Power control87H SOMDSMOD0LVDFPOFGF1GFPDIDL00110000B1、IAP_DATA:ISP/IAP数据寄存器ISP/IAP操作时的数据寄存器。
常用串行EEPROM的编程应用EEPROM是"Electrically Erasable Programmable Read-only"(电可擦写可编程只读存储器)的缩写,EEPROM在正常情况下和EPROM一样,可以在掉电的情况下保存数据,所不同的是它可以在特定引脚上施加特定电压或使用特定的总线擦写命令就可以在在线的情况下方便完成数据的擦除和写入,这使EEPROM被用于广阔的的消费者范围,如:汽车、电信、医疗、工业和个人计算机相关的市场,主要用于存储个人数据和配置/调整数据。
EEPROM又分并行EEPROM和串行EEPROM,并行EEPROM器件虽然有很快的读写的速度,但要使用很多的电路引脚。
串行EEPROM器件功能上和并行EEPROM基本相同,提供更少的引脚数、更小的封装、更低的电压和更低的功耗,是现在使用的非易失性存储器中灵活性最高的类型。
串行EEPROM按总线分,常用的有I2C,SPI,Microwire总线。
本文将介绍这三种总线连接单片机的编程方法。
I2C总线I2C总线(Inter Integrated Circuit内部集成电路总线)是两线式串行总线,仅需要时钟和数据两根线就可以进行数据传输,仅需要占用微处理器的2个IO引脚,使用时十分方便。
I2C总线还可以在同一总线上挂多个器件,每个器件可以有自己的器件地址,读写操作时需要先发送器件地址,该地址的器件得到确认后便执行相应的操作,而在同一总线上的其它器件不做响应,称之为器件寻址,这个原理就像我们打电话的原理相当。
I2C总线产生80年代,由PHLIPS 公司开发,早期多用于音频和视频设备,如今I2C总线的器件和设备已多不胜数。
最常见的采用I2C总线的EEPROM也已被广泛使用于各种家电、工业及通信设备中,主要用于保存设备所需要的配置数据、采集数据及程序等。
生产I2C总线EEPROM的厂商很多,如ATMEL、Microchip公司,它们都是以24来开头命名芯片型号,最常用就是24C系列。
24C系列从24C01到24C512,C后面的数字代表该型号的芯片有多少K的存储位。
如ATMEL的24C64,存储位是64K位,也就是说可以存储8K(8192)字节,它支持1.8V到5V电源,可以擦写1百万次,数据可以保持100年,使用5V电源时时钟可以达到400KHz,并且有多种封装可供选择。
我们可以很容易的在身边的电器设备中发现它们的身影,如电视中用于保存频道信息,电脑内存条中保存内存大小等相关信息,汽车里用于保存里程信息等等。
图一就是ATMEL24C64芯片的PID封装和用于内存条SPD(Serial Presence Detect)上的24芯片。
图1图2图二是同一总线上有多个器件时,可以通过设置A0-A2引脚来确定器件地址。
SDA是串行数据引脚,用于在芯片读写时输入或输出数据、地址等,这个引脚是双向引脚,它是漏极开路的,使用时需要加上一个上拉电阻。
SLC脚是器件的串行同步时钟信号,如果器件是使用在单片机系统中,那么SLC脚应该由单片机控制,根据单片机的程序要求产生串行同步时钟信号,控制总线的存取。
WP脚是写保护脚,当这个脚接入高电平时,芯片的芯片数据均处于禁止写入状态(所禁止的地址段要看各芯片的详细资料),当把WP脚接到地线时,芯片处于正常的读写状态。
当一个电路要求正常使用时是不允许程序修改EEPROM中的数据,只有在维护设置才可以修改数据,这时可以在电路上设置WP跳线或用微处理器对WP进行控制,这样只有在特定的电路状态下才可以更改到数据。
要在单片机系统中应用I2C总线的EEPROM做存储设备时,先要了解I2C总线的基本驱动方法。
在I2C总线空闲时,SDA和SCL应为高电平,也只有在这个条件下,微处理器才可以控制总线进行传输数据。
在数据传输的刚开始时,总线要求有一个START(开始位)位做为数据开始的标识,它的要求是SCL为高时,SDA有一个从高到低的电平跳变动作,完成这个动作后才可以进行数据传输,时序图参看图三'开始'。
传输数据时,只有在SCL为高电平时,SDA上的电平为有效数据。
编写单片机向总线送数据程序时则可以在SCL还在低电平时,把数据电平送到SDA,然后拉高SCL,这时SDA不应有电平跳变,延时后拉低SCL,再进行下一位的数据传送直到完成。
在总线上读数据时也是只有在SCL为高时,SDA为有效数据。
时序参看图三'保持'。
传送数据完成后,总线要有一个STOP(结束位)位,来通知总线本次传输已结束,它的要求是SCL为高时,SDA有一个从低到高的电平跳变动作,正好和START位相反。
在编程时要注意的是:不要在SCL为高时改变SDA的电平状态,否则可能会被误认为是停止位,而使得操作失败。
图3I2C总线在每接收完一个字节(8个二进制位)后,在第九个时钟信号时,会在SDA上回应一个低电平的ACK应答信号,以此表明当前受控的器件已接收完一个字节,可以开始下一个字节的传送了。
时序图可以参看图四。
单片机编程时可以在传送完一个字节后,把连接SDA的IO口线设置回读数据状态,如使用51系列的单片机时就要把IO口置高电平。
然后在SCL操作一个脉冲,在SCL为高时读取SDA,如不为低电平就说明器件状态不空闲或出错。
需要注意因为SDA是双向的IO,无论是微处理器接收还是器件接收,每个字节完成后,接收方都可以发送一个ACK回应给发送方。
图4I2C总线在操作受控器件时,需要先发送受控器件的器件地址,24系列的EEPROM也不例外,在每次命令前需要先发送一个字节的器件地址和读写标识,也可称为器件录址。
图五是24C64的器件寻址命令中每个位所代表的意思。
A2、A1、A0位是器件地址,它是对应于芯片的A2、A1、A0引脚,也就是说如果芯片A0引脚被设置成高电平时,在发送器件地址命令时字节中的A0位要设置为1,A0引脚为低电平时A0位设置为0。
这样不难看出在同一总线可以挂8个24C64。
ATMEL公司的24C系列芯片24C32及以上的型号使用16位地址进行寻址。
24C32之前的型号因为使用的是8位地址,所以在超过256字节的8位地址型号中会占用到A0、A1、A2位的来做页地址,每页有256字节,以此解决地址位不足的问题。
所以不同的型号器件地址位定义就有所不同,各型号的器件地址字节定义如图五至图七。
要注意的是24C01是没有器件地址的,还有24C16/16A的A0-A2已被页地址占用完,也就是说这三个型号的芯片只能在同一总线上挂一个,所以在设计电路选择器件时要注意这个问题。
器件地址字节中的R/W位是用于标识当前操作是读器件还是写器件,写器件时R/W位设置0,读器件时R/W位设置1。
图5图6图724C系列芯片的读写指令格式只有几种,下面以24C64芯片的指令格式来说明。
写入单个字节写入字节指令每次只能向芯片中的一个地址写入一个字节的数据。
首先发送开始位来通知芯片开始进行指令传输,然后传送设置好的器件地址字节,R/W位应置0,接着是分开传送十六位地址的高低字节,再传送要写入的数据,最后发送停止位表示本次指令结束。
图八是写入单个字节的时序图。
图8(点击看大图)页写入24C64支持32字节的页写入模式,它的操作基本和字节写入模式一样,不同的是它需要发送第一个字节的地址,然后一次性发送32字节的写入数据后,再发送停止位。
写入过程中其余的地址增量自己由芯片内部完成。
图九页写入的时序图。
无论那种写入方式,指令发送完成后,芯片内部开始写入,这时SDA 会被芯片拉高,直到写入完成后SDA才会重新变的有效,在编写微处理器程序时可以在写入的时候不停发送伪指令并查询是否有ACK返回,如果有ACK返回则可以进行下一步操作。
图9(点击看大图)读当前地址这种读取模式是读取当前芯片内部的地址指针指向的数据。
每次读写操作后,芯片会把最后一次操作过的地址作为当前的地址。
在这里要注意的是在微处理器接收完芯片传送的数据后不必发送给低电平的ACK给芯片,直接拉高SDA 等待一个时钟后发送停止位。
图十是读当前地址时序图。
图10读任意地址"读当前地址"可以说是读的基本指令,读任意地址时只是在这个基本指令之前加一个'伪操作',这个伪操作传送一个写指令,但这个写指令在地址传送完成后就要结束,这时芯片内部的地址指针指到这个地址上,再用读当前地址指令就可以读出该地址的数据。
图十一是读任意地址的时序图图11(点击看大图)连续读取连续读取操作时只要在上面二种读取方式中芯片传送完读取数据后,微处理器回应给芯片一个低电平的ACK应答,那么芯片地址指针自动加一并传送数据,直到微处理器不回应并停止操作。
图十二是连续读取的时序图。
图12(点击看大图)ATMEL公司的24C系列的其它型号的读写操作方式基本和上面介绍的相同,只是在8位寻址的芯片中地址位只用一个字节,还有就是在24C01中没有器件地址,地址位只占用高7位,最低位为R/W位.。
其它公司的24系列的EEPROM芯片的驱动方式也基本和以上所介绍的一样。
图十三是笔者设计的制作简单的24C读写器。
可以用它来做24C芯片的驱动程序编写实验,也可以配合上位机程序做24C的读写器使用。
上位机程序及相关内容向笔者发送电邮索要pnzwzw@。
电路是由一片AT89C2051芯片做为主控芯片,作用是用于连接电脑的RS232和驱动24C芯片,晶振使用11.0592M。
RS232电平转换是使用二个PNP三极管组成。
电源部分则直接在RS232上的4、7引脚取电,取电时需要在用软件控制这两脚为+9V至+12V之间,再通过D5稳压得到5.1V,无需外加电源。
24C64的SCL和SDA连接到P1.2/P1.3脚,因这两个IO脚内部有上拉,所以无需外接上拉电阻。
图13(点击看大图)本文附带一份用C语言编写的实验源程序和编译好的HEX文件,把HEX 烧入到AT89C2051就可以开始实验了。
实验程序是可以读写24C32/64/128/256/512的任意地址,程序使用模块化函数设计,读者朋友可以方便的加入到自己的程序中。
实验时可以用的串口调试软件。
单片机程序设计了简单的通讯协议,使用57600比特率,通讯协议的数据包是这样定义的:每个包有4个字节,命令字、地址高位、地址低位、数据。
读取时命令字为00H,数据字节不可以用,返回读出的数据。
写入时命令字为01H,返回00H 为成功,返回01H为失败。
要在24C64的2F3H地址上写入数据05H,则要发送01 02 F3 05。
连接好实验电路板,按图十四设置好串口,打开串口后可以看到板上的LED 在闪烁。
输入01 02 F3 05,发送后便可以把05写入到24C64的02F3H地址中,返回00为写入成功。