关于IIC EEPROM页写丢数据问题

发布者:和谐相伴最新更新时间:2017-11-26 来源: eefocus关键字:IIC  EEPROM  页写丢数据 手机看文章 扫描二维码
随时随地手机看文章

无论从那个地址连续写,不能超过(跨过)一整页。

先明白页写的道理。

AT24CXX系列的EEPROM为了提高写效率,提供了页写功能,内部有个一页大小的写缓冲RAM,地址范围当然就是从00到一页大小,发生写操作时,开始送入的地址对应的页被选中,并将其内容映像到缓冲RAM,数据从低端地址对应的缓冲RAM地址开始修改,超过这个地址范围就回到00,写完后,就会把开始确定的EEPROM页擦除,再把一整页RAM数据写入。所有写数据都发生在开始写地址时确定的页上。

如页容量为128,一页都是从00开始按128字节分成一个个的页,0页就是0~7F,1页就是80~FF,类推,边界就是128字节的整数倍地址。页RAM的地址范围为7位00~7F,写入时高端地址就是页号。发生写操作,开始送入的地址对应的页被锁存,后续不论写多少,都在这个页中,只是一个页内的地址进行加一,超过就归零开始。从F0开始写32个字节,那么开始送入的地址为F0,就会锁定在1号页(第2个页)上,底端7位页内部地址开始从70H开始写,到达7F时回到00再到10H,也就是写在了F0~FF,80~8F。也就是,从01开始写也只能到7F,再往80写就跑到00上去了,这就是写操作的翻卷,datasheet上都有说明。就是从边界前写两个字节也要分两次写。页是绝对的,按整页大小排列,不是从开始写入的地址开始算。

读没有页的问题,可以从任意地址开始读取任意大小数据,只是超过整个存储器容量时地址才回卷。但一次性访问的数据长度也不要太大。

所以分页的存储器要做好存储器管理,尽量同时读写的数据放在一个页上。


关键字:IIC  EEPROM  页写丢数据 引用地址:关于IIC EEPROM页写丢数据问题

上一篇:MSP430F249GPIO控制入门
下一篇:单片机的Flash E2prom Ram区别

推荐阅读最新更新时间:2024-03-16 15:47

AVR单片机的EEPROM读写分析
简介:本文介绍了AVR单片机的EEPROM读写数据时间问题,并分析了3个方法的各自优缺点。 由于AVR的EEPROM写周期比较长(一般为毫秒级),因此在编程使用过程中要特别注意.对于读EEPROM没什么好说的,读一个字节的数据要耗费4个时钟周期,可以忍受,写就比较麻烦了,虽然放在EEPROM的数据都不是频繁访问的;虽然可以用读-比较-写的机制降低EEPROM的写操作频度,但在写入过程中,过长的写入周期还是会造成一些问题,下面就分析一下几种方式的EEPROM写操作. 1. 循环查询式 将地址和数据写入EEPROM相关的寄存器,置写标志后就循环不断查询写完成标志,直到写完成,退出循环,顺序执行其他程序.在置写入标志到写完成
[单片机]
利用LPC2194的4路CAN网桥设计
CAN总线以其设计独特、成本低、可靠性高、实时性和抗干扰能力强等特点,在汽车工业、机械工业、纺织工业、机器人、数控机床、医疗器械等领域得到了广泛的应用。从高速网络到低速的多路接线网络都可以使用CAN总线,其最高传输速率可以达到1 Mbps,最远传输距离可达10 km(传输速率在5 kbps以下时)。但是当要求传输速率较高且传输距离较远时,单条总线就无法完成;而且在大型的网络中,经常需要多条总线的接入。这就需要同时有中继与路由功能的CAN网桥来实现以上功能。   本文设计的4路CAN网桥可以延长CAN传输距离,扩展CAN通信网络;同时具有路由功能,可实现不同CAN网络之间的不同路由、不同通信速率的转换,能够在大型CAN网络中起到关键
[单片机]
利用LPC2194的4路CAN网桥设计
如何用51单片机实现IIC通信
在之前的MCS-51系列单片机中内部没有IIC通信资源,所如果要想用51单片机实现IIC通信,就只能通过软件模拟其时序,这样也能实现IIC通信的功能。 这个是IIC的头文件,便于使用调用: #ifndef _IIC_H_ #define _IIC_H_ /***ucahr和uint 的宏定义很重要,否则下面的函数无法正常运行******/ #define uchar unsigned char //定义uchar型数据为无符号型 #define uint unsigned int //定义uint型数据为无符号型 sbit SCL = P2^3; sbit SDA = P2^4; /***申明外部函数****/ extern
[单片机]
如何用51单片机实现<font color='red'>IIC</font>通信
STM8S硬件IIC卡在判忙,注意事项
下面是关键,下面这样设置IO可正常使用硬件IIC GPIO_Init(GPIOB, GPIO_PIN_4, GPIO_MODE_OUT_OD_HIZ_SLOW); //IIC,OD outPut GPIO_Init(GPIOB, GPIO_PIN_5, GPIO_MODE_OUT_OD_HIZ_SLOW); //IIC,OD outPut //或者 GPIO_Init(GPIOB, GPIO_PIN_4, GPIO_MODE_OUT_OD_HIZ_FAST); //IIC,OD outPut GPIO_Init(GPIOB, GPIO_PIN_5, GPIO_MODE_OUT_OD_HIZ_FAST); //IIC,OD ou
[单片机]
STM32 IIC 详解 之 stm32 IIC 从机模式(中断方式收发数据)
1、IIC简介 第二节代码会用到该部分内容,对于IIC来说,从机是不能主动发送数据的,开始条件都是由主机生成。 1.1、主机发送数据流程 1) 主机在检测到总线为“空闲状态”(即 SDA、SCL 线均为高电平)时,发送一个启动信号“S”,开始一次通信的开始 2) 主机接着发送一个命令字节。该字节由 7 位的外围器件地址和 1 位读写控制位 R/W组成(此时 R/W=0) 3) 相对应的从机收到命令字节后向主机回馈应答信号 ACK(ACK=0) 4) 主机收到从机的应答信号后开始发送第一个字节的数据 5) 从机收到数据后返回一个应答信号 ACK 6) 主机收到应答信号后再发送下一个数据字节 7) 当主机发送最
[单片机]
PIC单片机EEPROM问题
1. IDE在线调试,VIEW- EEPROM看不出变化:可能没有刷新;需要复位一下再看 2. 掉电写入不正确: 需要保证EEPROM写入完成前VCC电压足够稳定,几点建议: 1)、加大VCC稳压器前端储能电容的容量; 2)、尽快检测到断电事件; 3)、尽快切断消耗储能电容能量的通路; 4)、尽快进入保存参数的流程。 1)、EEPROM的写入是需要时间的,一般在4~10ms吧 2)、如果在这个时间内发生断电,则写入就可能出错 3)、解决办法就是检测到断电后用电容维持一段写入时间
[单片机]
STM8读写EEPROM
RWW特性允许用户在执行程序和读程序存储器时对DATA区域进行写操作,因此执行的时间被优化了。相反的操作是不允许的:即你不可以在写程序存储器时对DATA EEPROM进行读操作。 RWW特性是一直有效的而且可以在任意时刻使用。注意:并不是所有STM8都拥有RWW特性,请参考相应的数据手册来了解更多信息。 字节编程 可以对主程序存储器和DATA区域逐字节地编程。要对一个字节编程,应用程序可直接向目标地址写入数据。 在主程序存储器中 当字节编程操作执行时,应用程序停止运行。 在DATA区域中 有RWW功能的器件:在IAP模式下,应用程序不停止运行,字节编程利用RWW功能进行操作。 无RWW功能的器件:当字节编程操作执行时,应
[单片机]
Microchip推出SPD EEPROM
全球领先的单片机和模拟半导体供应商——Microchip Technology Inc.(美国微芯科技公司)今天宣布推出全新系列串行存在检测 (Serial Presence Detect,简称SPD) EEPROM器件。它们既能支持现今高速个人计算机中最新的双倍数据速率 (DDR2) DIMM模块,还可支持未来的DDR3 DIMM模块。新器件编号分别为34AA02、34LC02以及34VL02 (34XX02),符合SPD EEPROM器件最新的JEDEC标准,其中34VL02可支持业界任何一款SPD EEPROM 的最低工作电压范围(1.5V至3.6V) 。各款EEPROM均备有JEDEC标准封装,也是目前唯一采用深受欢迎
[新品]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved