Shop OBEX P1 Docs P2 Docs Learn Events
EEPROM write protect — Parallax Forums

EEPROM write protect

kolyurkolyur Posts: 43
edited 2011-12-10 17:41 in Propeller 1
I noticed that the 24LC series EEPROMs can be write protected by pulling pin 7 high. For a commercial product with in-circuit programming capability, is there any reason to make use of the write protect? My thought was to have a dip switch or jumper on the board that could toggle pin 7 from Vss to Vcc after Prop programming is complete. I guess my real question is, are EEPROMs ever susceptible to data loss/corruption or inadvertent writes that could be avoided by using the write protect? Parallax just shows pin 7 grounded on their schematics so they must not think it's necessary.

Any opinions?

Comments

  • Cluso99Cluso99 Posts: 18,069
    edited 2011-12-03 19:44
    Some of my boards have a 10K pullup and a link to gnd (being a WE write enable pin/shunt). Why? Well, some of my users may not have a propplug to reprogram the eeprom. The code in the eeprom is frozen and all it does is boot a binary from the microSD. So, the microSD boot file can be updated by the pc, and no propplug is required.
  • Mike GreenMike Green Posts: 23,101
    edited 2011-12-03 20:23
    Serial EEPROMs are not easily written to except by programs specifically designed to write to the EEPROM. It would take several complex errors for a program that just reads from an EEPROM to accidentally write to it. On the other hand, it's easy enough to load the wrong program into RAM by accident and execute it so that the program writes to the unprotected EEPROM. As Cluso99 suggests, it's better to prevent writes to the EEPROM once the EEPROM is properly programmed, particularly if you don't have an easy way to reload the EEPROM properly.
  • kolyurkolyur Posts: 43
    edited 2011-12-10 12:39
    Pullup+shunt idea sounds good, I think I'll make use of that. Thanks for the suggestion.
  • Cluso99Cluso99 Posts: 18,069
    edited 2011-12-10 17:41
    Or if you have the space, a 1x3pin header with the center pin to WP and the other pins to 3v3 and Gnd. Then shift the shunt to either postition.
Sign In or Register to comment.