AnsweredAssumed Answered

IntEEPROM is blocking and causing slow operation

Question asked by Jerry Girard on Mar 13, 2013
Latest reply on Mar 27, 2013 by Iulian Talpiga

I am using IntEEPROM bean in my MC9S12XA256 application.  I have it set up for a virtual page that is 400 bytes in size.  It all seems to work fine, however, when I use SetPage() function to flush the page to EEPROM, it takes several seconds to accomplish this task and it blocks the entire processor operation during that time.  I was surprised!

 

I have tried to enable interrupts for the bean, but that only provides an interrupt after the end of the write cycle.  I believe this bean is not written as an interrupt driven process because there are a few while-loop in the WriteSector() function that are causing the blocking when it does the erasing part.

 

Why does this take such a long time?

 

Is there a way to make it go faster?

 

Do I need to write my own EEPROM driver to take full advantage of an interrupt driven process?

 

Seems like this IntEEPROM bean should already be optimized for more efficient operation.  I'm disappointed.

 

Thank you.

Outcomes