Download User`s Manual EEPROM Emulation Library EEL
Transcript
EEPROM Emulation Library 6.3.6 Library behaviour after operation interruption Library operation might be suddenly interrupted e.g. by a power fail. Depending on the interrupted operation (E.g. Flash erase, write ....) the behaviour of the library on the next start-up might differ: 6.3.7 Library was idle or at the end of a operation: Normal library start-up Flash block erase or Flash block header operation was interrupted: Eventually it is necessary to fix a block status (e.g. block activation or block erase was interrupted). In this case additionally Flash write operations might take some more time and so, slightly enlarge the time until the driver leaves the state EEL_OPERATION_STARTUP. Furthermore, the driver will return the warning EEL_ERR_FIX_DONE as an indication that a fix was done. The library operation continues normally, the application does not need to react on the warning. DS Write was interrupted If the DS write proceeded up to writing the DCS, the DS is valid. If the EOR has not been written, the DS will automatically be refreshed. In this case additionally Flash write operations might take some more time and so, enlarge the time until the driver leaves the state EEL_OPERATION_STARTUP. DS Write was interrupted If the DS write did not proceed up to writing the DCS, the DS is invalid. The start-up process does no special action, but this DS instance is not considered on DS read. Application update issues 6.3.7.1 Change DS length When a user application shall be updated but the EEPROM emulation data shall be used also further on, different constraints need to be considered with respect to the ROM ID-L table. On application update it might be required to change the DS length of some IDs. Differing from the MF2/UX4 EEELib, this is automatically done, when the ID-L table in ROM is updated. After that update all DS’s are read/written with the new length and also the Refresh process copies the data with the new length: Old length < new length Data is extended by any data stored after the DS (data words of the next DS à undefined) Old length > new length Data is cut to new length Note: After DS length change, a Read operation will always return a checksum error (EEL_ERR_WRONG_CHECKSUM) as the checksum does not match to the DS data (see above) anymore. To fix this, the DS must be written once more by the application. Anyhow, differing from the EEELib, the DS length is no longer stored within the DS, but in the ID-L table. When the table is updated, the information of the former DS size get lost. So, the library provides no measure to get the length of the last stored DS instance. This information must be provided otherwise. User’s Manual U20280EE1V2UM00 88