PDA

View Full Version : Write to EEPROM timing, 12F683



RussMartin
- 31st January 2009, 06:53
Okay, gang:

My 12F683 data sheet (p. 122) gives EEPROM erase/write cycle time as 5 ms (typical) to 6 ms (maximum).

My old PBP manual (p. 160) says, "Each WRITE is self-timed and takes about 10 milliseconds to execute . . . " (italics mine)

My new PBP manual (p. 162) says, "Each WRITE is self-timed and takes up to 10 milliseconds to execute . . . " (italics mine)

Whom should I believe/trust on this, and why?

Darrel Taylor
- 31st January 2009, 07:44
Whom should I believe/trust on this, and why?
I believe the first one (datasheet).

The second one is a little ify.
Depends on your tolerance of "about 10ms".
An 18F4550 only takes 4ms.

The third one is definately wrong, because the 16F84 can take up to 20ms, although it's usually 10.

I think the best information will always be the datasheet for the particular device being used.
<br>

Acetronics2
- 31st January 2009, 09:07
Hi, Russ

Have a Happy new Year ... and plenty of readers.

a little trip through the datasheets I have shows for parameter "D 133"

12 F 683 : 2 - 2.5 ms ( last edition ...)

16 C 84a : typ 10 ms
16 F 84a : 4 - 8 ms
16 F 877 : 4 - 8 ms
16 F 88 : 2 - 4 ms
16 F 88x : 2 - 2.5 ms

18 F 1320 : typ 2ms
18 F 8723 : typ 2.5 ms
18 F 4523 : typ 4 ms

so ... it seems a factor of process method ... or chip generation.

That also stick to what you've read in the different manuals ... for the date they have been written ...

Alain

Darrel Taylor
- 31st January 2009, 11:43
a little trip through the datasheets I have shows for parameter "D 133"

Hey Alain, try parameter D122
<br>

Acetronics2
- 31st January 2009, 12:45
Hey Alain, try parameter D122
<br>

LOL ... seems EEPROM just need ~ twice the program memory time ...



Alain

RussMartin
- 31st January 2009, 22:59
Thanks, guys.

I suspected that the data sheet provided the information to actually rely upon, but . . .

When compiling from a high-level language, one doesn't necessarily know how the compiler's designers accomplish a given command and whether or not their implementation of the command has somehow added drastically to the overhead.

mister_e
- 31st January 2009, 23:47
You could still measure it yourself to know the truth. Use internal Timer, MPLAB StopWatch or toggle a I/O and measure it with a Scope or with PICKIT 2 logic analyzer.