Keil Logo Arm Logo

problem to use fopen with Flash FS library

Next Thread | Thread List | Previous Thread Start a Thread | Settings

Details Message
Read-Only
Author
Bernard de l'Escaille
Posted
25-Dec-2011 10:39 GMT
Toolset
ARM
New! problem to use fopen with Flash FS library

Hello everybody,

I use a LP1768 (cortex-M3) and I would like to use an SD card. For this, i use the Flash FS library. But when i want to use the "fopen()" this fuction doesn't work. it return an error.

I have read the different posts on this forum and they speak about the "retarget file". But when i implement this file on my project, I have an error :
".\Obj\test.axf: Error: L6915E: Library reports error: __use_no_semihosting_swi was requested, but a semihosting fputc was linked in"
I do not understand exactly what is the problem, but I do not really understand the usefulness of this file.

Can you help me ?

thank you

Read-Only
Author
Phil Zealand
Posted
28-Dec-2011 00:07 GMT
Toolset
ARM
New! RE: problem to use fopen with Flash FS library

1. In project options->target, make sure 'use MicroLib' is *not* checked (FlashFS is not compatible with MicroLib)

2. In retarget.c options->C/C++ tab, define box, add STDIO

3. Check sample project retarget.c for required changes (if any)

4. FlashFS requires heap space to be defined, if I recall, 0x400 was what I used

- this from memory of past project, ymmv but it is a starting point,

Phil.

Read-Only
Author
Bernard de l'Escaille
Posted
28-Dec-2011 10:25 GMT
Toolset
ARM
New! RE: problem to use fopen with Flash FS library

thanks for your answer

for the different point:

1) Yes I know and i don't have checked this box :)
2) Same
3) I have copied this file on a example of Keil. I supose that is just!
4) I don't have read this on the different documentation http://www.keil.com/product/brochures/rl-arm_gs.pdf. But I'll keep looking.

Read-Only
Author
Phil Zealand
Posted
28-Dec-2011 20:53 GMT
Toolset
ARM
New! RE: problem to use fopen with Flash FS library

The error is sort of telling you what went wrong...

Semihosting is an I/O retargetting method whereby the I/O of functions can be re-directed to the UV4 debugging environment on your PC instead of local resources. Example is to use the pc file system (instead of your' flash card). A common use for this in Keil demos is to redirect stdio to the debuggers serial->debug window in UV4, eliminating the need for using a hardware serial port.

The linker is telling you that you have called a semihosting function, while also specifying #pragma import(__use_no_semihosting_swi). in this case, fputc is calling a semihosting fn - recheck the retarget.c file against the samples again, maybe you are calling sendchar() from fputc() = sendchar from memory is a retargetting fn which ultimately calls ITM_SendChar(), unless you change it.

Read-Only
Author
Bernard de l'Escaille
Posted
29-Dec-2011 10:08 GMT
Toolset
ARM
New! RE: problem to use fopen with Flash FS library

But since I could not find the solution, I all over again. And I do not know why, I have even more errors.
But what I do not understand is that if I contains the sample project and I change the Main file (with my code) everything works fine. But if I create a new project with the same file include (retarget.c, FS_CM3.lib, file_Config.c, ...) it does not work!

I must be an error in making a new project but I do not know what.

Thank you for your help anyway.

Read-Only
Author
Phil Zealand
Posted
29-Dec-2011 21:43 GMT
Toolset
ARM
New! RE: problem to use fopen with Flash FS library

create the basic new project with the problem, zip and send it to ao7wxa598d2eqve@jetable.org see if I can see problem

(email address is temporary only so i dont live with spam forever)

- Phil

Read-Only
Author
Bernard de l'Escaille
Posted
30-Dec-2011 16:47 GMT
Toolset
ARM
New! RE: problem to use fopen with Flash FS library

Thank you very much but now I have succeeded. I do not know how I could be wrong. I still again and now everything is good!
I just still a problem with the UART but that's another story ^^,

Next Thread | Thread List | Previous Thread Start a Thread | Settings

Keil logo

Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.