Searching \ for 'X24C01 problem. Ever happened to you ?' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/index.htm?key=x24c01+problem+ever
Search entire site for: 'X24C01 problem. Ever happened to you ?'.

Truncated match.
PICList Thread
'X24C01 problem. Ever happened to you ?'
1999\03\18@051531 by Pedro Drummond

flavicon
face
part 0 1365 bytes
<META content=text/html;charset=iso-8859-1 http-equiv=Content-Type>
<META content='"MSHTML 4.72.3110.7"' name=GENERATOR>
</HEAD>
<BODY bgColor=#ffffff>
<DIV>
<DIV>
<DIV>Hi, everyone.<BR><BR>Has someone experienced problems with X24c01 before
?<BR><BR>I have a product being marketed using it, and the problem is that it
works<BR>fine for weeks and suddenly it would allow&nbsp; being read, but not
being<BR>written anymore ! It happens with SOME of them. Resets or taking energy
out<BR>won't change a thing. If I change the microcontroller, it will work
fine<BR>(reading and writing). If I take this &quot;bad&quot; microcontroller to
other<BR>hardware, it will work fine also ! I have tested a program that
writes<BR>50,000 times on the whole eeprom (a unit that presented the problem)
and it<BR>accepted gladly all writes ! I am using read and write routines
recommended<BR>at XICOR's site. Well, VERY similar to those.</DIV>
<DIV>And finally, if I join the same microcontroller in the same hardware again,
the problem will be back in a few hours !</DIV>
<DIV><BR><BR>What am I doing wrong ?<BR></DIV></DIV></DIV></BODY></HTML>

</x-html>

1999\03\18@060121 by Michael Rigby-Jones

flavicon
face
This could possibly be a timing issue.  If the timing is marginal then some
devices may start failing as they warm up.  Can you try slowing down the bus
speed on one of your "BAD" systems and see if it starts working again.  Is
the microcontroller crystal controlled or are you using a RC oscillator?  An
RC oscillator can drift in frequency.

Regards

Mike Rigby-Jones

{Quote hidden}

1999\03\18@104239 by Pedro Drummond

flavicon
face
Giving more data:

I am using a crystal. Timing of these devices is quite easy. They say that
you must wait at least 5 microseconds between raising or lowering clock and
data signals. There is no maximum, and I am using around 60 microseconds
(because I am using a delay routine already being used somewhere else). What
intrigues me:

- The problem is about writing. Reading is always ok.

- It happen in some devices, after some hours of use (not necessarily
writing or reading the eeprom during this time).

- If I take the processor out and immediately put it back, it gets working
properly again. This is crazy, no component cooled down, here...

- If I disconnect the energy from the device for more than around 10 hours,
it begins to work properly again (again, for some time).

- Some devices (the majority, it seems) never show the problem.

Thanks for helping, I am begining to have suicidal tendencies...

Pedro.




{Quote hidden}

______________________________________________________
Pedro Drummond
Engenharia Mestra de Sistemas / SP / Brasil
Tel: 55-11-5505.0415
e-mail: spam_OUTprdTakeThisOuTspaminternetcom.com.br
______________________________________________________

1999\03\18@105114 by Harrison Cooper

flavicon
face
Hook an analyer or good digital scope, and look at the interface when it is
working, and when its not. See if there is a difference.  Measure both
timing and voltage levels.

Is the processor continuing to operate normally in all other ways when the
writes fail?

1999\03\18@110752 by Ray Gardiner

flavicon
face
>Hi, everyone.
>
>Has someone experienced problems with X24c01 before ?
>
>I have a product being marketed using it, and the problem is that it works
>fine for weeks and suddenly it would allow  being read, but not being
>written anymore ! It happens with SOME of them. Resets or taking energy out
>won't change a thing. If I change the microcontroller, it will work fine
>(reading and writing). If I take this "bad" microcontroller to other
>hardware, it will work fine also ! I have tested a program that writes
>50,000 times on the whole eeprom (a unit that presented the problem) and it
>accepted gladly all writes ! I am using read and write routines recommended
>at XICOR's site. Well, VERY similar to those.
>And finally, if I join the same microcontroller in the same hardware
>again, the problem will be back in a few hours !
>

Hi Pedro,

I have three suggestions which you could check out.

1. Is it possible that some other code interrupts during the write
  cycle. Even if you aren't using interrupts, check that you
  don't get spurious interrupts that could throw your timing out
  in some indeterminiate way.

2. 50,000 writes! This is approaching the endurance limit of the
  early 24c01's which if i remember are 100k write cycles. Maybe
  you are exceeding the endurance of the chip. I suggest that
  you could check the Xicor data books for more detailed endurance
  data.
  Some later chips have 1,000,000 write cycles.

3. If it is an endurance problem, then you have a limited number of
  options, reduce the frequency of writing, use different parts of
  the eeprom to spread the usage. Try for higher spec parts with
  greater endurance.




Ray Gardiner .....rayKILLspamspam@spam@hdc.com.au

1999\03\18@111957 by Holger Morgen

flavicon
face
Hi -

The 24C01 har a limited lifetime. (> 1.000.000 writes ? ). If you write to
it every sec, you only get:

1.000.000
---------------- = ~ 1.7 week.
60*60*24*7

I don't know what happes after that milion, so...

Ofcause you could also just have a wierd software prob....





{Quote hidden}

1999\03\18@131715 by wwl

picon face
On Thu, 18 Mar 1999 10:54:05 -0000, you wrote:

>This could possibly be a timing issue.  If the timing is marginal then some
>devices may start failing as they warm up.  Can you try slowing down the bus
>speed on one of your "BAD" systems and see if it starts working again.  Is
>the microcontroller crystal controlled or are you using a RC oscillator?  An
>RC oscillator can drift in frequency.
>
Remember also that write time may well have some dependency on voltage
& temperature. Self-timed eeproms will probably be using an on-chip RC
osc. If for example you are assuming the time that a write will take
instead of polling it, it may be drifting, so the following eeprom
access fails.

1999\03\18@142803 by Pedro Drummond

flavicon
face
Thanks Ray, Mike, and everyone that has been helping me.

Answering your questions:

- The exact part is the Xicor X24C01P, and I have been looking exactly this
part data, no surprises here.

- Also, no write protect pin, or test pin. Just Vcc, Gnd, SCL, SDA (clock
and data).

- Oh no, I am not writing 50,000 cycles in my application. When I observed
the problem, I wrote this other program, the one that writes an eeprom
50,000 times, to see if the problem occurs because of writing so many times.
And it didn't, it was back only when I left the device energized for some
hours. Yet, I wrote 50,000 times, but I spread all writes throughout the
eeprom (50,000 / 128bytes = 390 writes per position).

- What spurious interrupts are you referring to ? Well, I do not use regular
interrupts here, but what draws my attention is the fact that I have certain
devices that are definitely prone to this problem...



And one new data, now:

Although it behaved differently before, now I got a "sick" hardware (device
with the problem), took the controller out, inserted a new one and it
continued with the problem. That means the EEPROM is definitely the one to
be blamed... What am I doing wrong ? Maybe I have a "bad" batch from Xicor ?
And I cannot point out the bad eeprom during the first few hours of use...
Also, a burn-in effort was not in my plans...


Thanks again,

Pedro.


-:
:I have three suggestions which you could check out.
:
:1. Is it possible that some other code interrupts during the write
:   cycle. Even if you aren't using interrupts, check that you
:   don't get spurious interrupts that could throw your timing out
:   in some indeterminiate way.
:
:2. 50,000 writes! This is approaching the endurance limit of the
:   early 24c01's which if i remember are 100k write cycles. Maybe
:   you are exceeding the endurance of the chip. I suggest that
:   you could check the Xicor data books for more detailed endurance
:   data.
:   Some later chips have 1,000,000 write cycles.
:
:3. If it is an endurance problem, then you have a limited number of
:   options, reduce the frequency of writing, use different parts of
:   the eeprom to spread the usage. Try for higher spec parts with
:   greater endurance.
:
:
:
:
:Ray Gardiner rayspamspam_OUThdc.com.au
:
:
:

1999\03\18@144833 by Pedro Drummond

flavicon
face
Through the scope, everything looks fine, even when the write does not
actually happen. It seems it should be writing.

Also, the X24C01 is not self-timed. I toggle the clock line to "push"and to
"pull" data, to and from the memory.

However, the data book specifies this clock signal as being 4.7 microseconds
long (minimum) for each level; well, i am using 60 microseconds for high and
7 microseconds for low. Would this "not-50%" duty cycle be a problem ? Specs
don't mention...





-----Mensagem original-----
De: Harrison Cooper <@spam@hcooperKILLspamspamES.COM>
Para: KILLspamPICLISTKILLspamspamMITVMA.MIT.EDU <RemoveMEPICLISTTakeThisOuTspamMITVMA.MIT.EDU>
Data: Quinta-feira, 18 de Margo de 1999 12:46
Assunto: Re: X24C01 problem. Ever happened to you ?


:Hook an analyer or good digital scope, and look at the interface when it is
:working, and when its not. See if there is a difference.  Measure both
:timing and voltage levels.
:
:Is the processor continuing to operate normally in all other ways when the
:writes fail?
:

More... (looser matching)
- Last day of these posts
- In 1999 , 2000 only
- Today
- New search...