missing cache API functions in the emfile libraries

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

cross mob
Anonymous
Not applicable

 Hi,

   

I want to setup a  SD card data logger on a PSoC5 using the emFile component. As I need a faster write operation, I'm trying to enable a buffer using the cache API functions.

   

The problem is that I get build errors: "undefined reference to `FS_CacheRW_Init'", " undefined reference to `FS_AssignCache'" and "undifined reference to `FS_CACHE_SetMode'".

   

I looked in the .a files using notepad and I indeed didn't find FS_CacheRW_Init and FS_CACHE_SetMode, while I could find FS_AssignCache.

   

Does anyone knows how to enable a cache using the emfile component on a PSoC5?

0 Likes
3 Replies
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

The cache can be enabled here -

   

 

   

   

 

   

Is that what you were looking for ? The *.cydwr file is in workspace explorer.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

 Thanks danaaknight you for your answer, but the "instruction cache enabled" option was already set in my .cydwr file. As some cache API functions names are not present in emFile\LinkLibrary\PSoC5\GCC\libemf32nosnlfn.a, I'm going to create a support case. I'll keep you informed.

   

David

0 Likes
Anonymous
Not applicable

Thanks danaaknight! the FS_FWrite function is indeed not blocking, meaning that some buffers were already running without using the cache API functions. I added a frequency divider in my main loop and now my data logger works fine.

   

Regards,

   

David

0 Likes