perform a non-blocking write operation to the EEPROM

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
shil_1288831
Level 3
Level 3
25 sign-ins 25 replies posted 10 sign-ins

Hi,

I'm using CY8C5888AXI-LP096.

I'm trying to perform a non-blocking write operation to the EEPROM, but in the current state I'm getting a lot of delay in the system because of that.

I've added a file with the basic procedures, it won't compile but it will give the basic idea.

What I'm doing is calling every 5ms to appNVM_cyclicWrite() Its check if the EEPROM is ready and if it is, its extract data from a FIFO and write it to the EEPROM.

Am I doing it right? And is there another way to check the EEPROM state? (Without the checking of the temperature)

Thank you.

0 Likes
1 Solution
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

user_384...,

I believe that writing to EEPROM is blocking, taking some ~20ms.

Way back I posted EEPROM saving component, check if any useful code there for your app

myEEPROM: component to save/recall application settings in EEPROM between power offs

You should also consider overrides limit of EEPROM (~1E+5) if data are saved every 20ms. There are Cypress kits with FRAM, which may work better for this type of application:

http://www.cypress.com/documentation/development-kitsboards/cy8ckit-044-psoc-4-m-series-pioneer-kit

/odissey1

View solution in original post

0 Likes
1 Reply
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

user_384...,

I believe that writing to EEPROM is blocking, taking some ~20ms.

Way back I posted EEPROM saving component, check if any useful code there for your app

myEEPROM: component to save/recall application settings in EEPROM between power offs

You should also consider overrides limit of EEPROM (~1E+5) if data are saved every 20ms. There are Cypress kits with FRAM, which may work better for this type of application:

http://www.cypress.com/documentation/development-kitsboards/cy8ckit-044-psoc-4-m-series-pioneer-kit

/odissey1

0 Likes