This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Keil Flash File System and byte-programmable EEPROM 24LC512 (I2C)

Hallo, All!

Need your advice re: using I2C-accessible EEPROM together with Keil Flash File System (FFS). EEPROM I am talking about is kind of 24LC512 or FRAM (like FM24C512) or any other kind of byte-programmable ROM with access different from memory-mapped space (say, via CS).

I know the library Keil provides is compatible with e.g. AT28C256, which is called in its datasheet "paged parallel EEPROM" and in fact this is Flash type device. It means the byte/word read operation works like any other type of memory, however writing bytes into it requires some algorithm.

As per I2C devices both read/write operations require you to use special algorithm (under I2C protocol) which IS NOT memory-mapped access.

My question is: am I right the Keil FFS is not designed to support such kind of EEPROM as w/ I2C physical interface?

The Keil FFS gives only 2 API functions to be constructed by an user:
- Specify Code used to Write the Flash Block
- Specify Code used to Erase the Flash Block

The FFS comes in source code and you can try substitute your own code to "Read the Flash Block", however seems to me if look precisely at some portion of code they use expressions which access memory-mapped address space. E.g.: in _fcreate() where there is a work with FlashDev structure. It should make impossible to use the FFS for any other bus not mapped to MCU's address space via CS. Is that right?

Thanks,
Nikolay.

0