Typically when you write to a flash chip, you MUST write to the entire sector (128 bytes usually) within a specified window. These bytes are written into a buffer on the chip, and only if you are within the window time, does the chip *itself* write the bytes. Hence, if you only write ONE byte, the other 127 in that sector are reset to FFh. Thus if you expect ot write one byte, wait a while, then another byte etc, only 1 of your valid data bytes will ever be present in the sector, all other bytes will be FFh.
That being said, there may be some Flash chips that do not do this. Atmel however is not one of them.
The other "dance" mentioned is called a Software Data Protection (SDP) routine. It is meant to prevent invalid writes from happenning (i.e. hard for noise to mimic), and it is typicall a 3 byte sequence that must be written at the start of every page, EVEN if this feature is disabled, most Flash chips make you use it anyway.
--
Aaron Hughes
urpNOSPAM@canerdian.ca
http://www.canerdian.ca
wrote in message
news:1105555846.250850.320170@c13g2000cwb.googlegroups.com...
> I'm interested in using a flash chip for some datalogging applications,
> however am not sure if it's practical to integrate. EEPROMs are nice
> (and easy), but I would like to get something with more than just 32kB
> of memory.
>
> Can flash memory only be written one sector at a time? Is it possible
> to do single-byte-only writes?
>
> If not, are there any other memory storage options (in a single chip
> solution) that can store at least, say, 64kB? What about 256kB?
> Thanks,
> Dave
>