Hi!
I asked Atmel if it was reliable to just write a page of AVR microcontroller program flash memory (NOR flash, I guess) to all 0 instead of first erasing it to 0xFF and then writing it to 0.
They said, it is not recommended and recommended the erase/write cycle mentioned in the datasheet.
Can someone explain that? I fail to see how setting a page to all 0 could fail without first erasing it to all 0xFF. Or might several subsequent writes accumulate too much charge on the floating gates (FG) such that a following erase might not fully discharge a FG?
Is there any reason not to set any number of bits from 1 to 0 by writing to the page without erasing it first? That would save the other bits an erase/write cycle, I would guess, although I had a different reason for setting a page to all 0.
Thanks
I asked Atmel if it was reliable to just write a page of AVR microcontroller program flash memory (NOR flash, I guess) to all 0 instead of first erasing it to 0xFF and then writing it to 0.
They said, it is not recommended and recommended the erase/write cycle mentioned in the datasheet.
Can someone explain that? I fail to see how setting a page to all 0 could fail without first erasing it to all 0xFF. Or might several subsequent writes accumulate too much charge on the floating gates (FG) such that a following erase might not fully discharge a FG?
Is there any reason not to set any number of bits from 1 to 0 by writing to the page without erasing it first? That would save the other bits an erase/write cycle, I would guess, although I had a different reason for setting a page to all 0.
Thanks
Last edited: