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

fopen hard fault (__sys_open)

Hello,

I am using an STM32F437 MCU with Keil MDK-ARM V4.71a. My application (no RTOS) reads an SD Card on start up via the RL-ARM FFS. This has been working for a few years but I have now upgraded to Keil V4.74 (the last V4 release). Now when I run my code I get a Hard Fault when I call fopen(). I have tracked it down to __sys_open() but that's as far as I can go, as I don'y have __sys_open() source code. Any ideas on what the issue could be? Something seems to have changed between V4.71a and V4.74. I can't use V5 because this requires the RTX for FFS and for various reasons I need the code to be stand-alone.
Thanks.

  • I also have problems encountered

    Finally I found that when you fopen mode is "w"

    If finit did not succeed before fopen, the program will run to DAbt_Handler

    I use 4.71 and 4.74 cross comparison, the following three files have problems

    FS_ARM_XXX.lib
    File_Config.h
    File_lib.c

    If you are using 4.71 of these three files, instead of 4.74 files, he will be completely normal

    I still can not find a solution, I think this is a serious bug, the problem ARM7, M3, M4, there are a bug