Roland Borrmann

EEPROM usage 9S08DZ32 for byte-wise writes

Discussion created by Roland Borrmann on Jul 11, 2009
Latest reply on Jul 12, 2009 by kef



in a software migration project 68HC05X16 to 9S08DZ32 I have to

implement a scheme for 'byte-wise' writes to EEPROM (as it was

possible with HC05, which had 256 byte of EEPROM).


9S08DZ has 1024 bytes of EEPROM with an erase size of 8 bytes

at once. To write to an individual byte I first have to erase 8 bytes

and then restore 7 of them because only 1 byte needs to be changed.


Now my question:


Is it possible to program a (already programmed) byte without a prior

8-byte-erase if I only want to reduce the number of 1-bits in that byte?

(example of what I would like to do: after erase the byte is 0xFF, then I

program it with 0xC3, then I program it with 0x82h, which is a 1->0 transition

for bit 6 and for bit 0)


Data sheet (MC9S08DZ60 Series Rev.4, page 54) says:

"NOTE Before programming a particular byte in Flash or EEPROM,

the sector in which that particular byte resides must be erased

by a mass or sector erase operation"


This looks like the 1-->0 transition requires in all cases a

previous erase operation.


Does anyone have experience with this issue?