今天写程序的时候,遇到了一种奇怪的现象:

f_open函数第一次可以调用,第二次调用时出现程序死掉的现象。

起初移植以为时Fat文件系统存在BUG的问题,后来看了很多类似的问题和解决方案后,将FIL结构体对象设置为全局变量 ,然后就可以避免该错误。如下图所示,将FIL结构体的两个fread和fwrite变量设置为全局变量,该方法避免了堆栈溢出现象。

Fatfs文件系统的堆栈溢出问题(f_open函数第一次可以调用,第二次调用时出现程序死掉的现象)

下图即该解决方案的来源。

Fatfs文件系统的堆栈溢出问题(f_open函数第一次可以调用,第二次调用时出现程序死掉的现象)

相关文章:

  • 2021-11-16
  • 2021-11-17
  • 2022-12-23
  • 2021-12-30
  • 2022-01-10
  • 2022-01-18
  • 2021-12-21
猜你喜欢
  • 2022-01-05
  • 2021-10-08
  • 2022-12-23
  • 2021-10-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-05
相关资源
相似解决方案