文件系统
FatFs 是用于小型嵌入式系统的通用 FAT/exFAT 文件系统模块。FatFs 模块的编写符合 ANSI C(C89),并与磁盘 I/O 层完全分离,因此它独立于硬件平台。 它可以集成到资源有限的小型微控制器中,例如 8051,PIC,AVR,ARM,Z80,RX 等。此外,还提供用于微型微控制器的 Petit FatFs 模块。
找到配置文件third_party\FatFs\source\ffconf.h
添加下面选项
#include "FreeRTOS.h"
#include "semphr.h"
#define FF_FS_REENTRANT 1 //开启可重入
third_party\FatFs\source\ffsystem.c 文件修改
// 搜索FreeRTOS,注释原来的,放开FreeRTOS相关注释
/* FreeRTOS */
*sobj = xSemaphoreCreateMutex();
return (int)(*sobj != NULL);
/* FreeRTOS */
return (int)(xSemaphoreTake(sobj, FF_FS_TIMEOUT) == pdTRUE);
/* FreeRTOS */
xSemaphoreGive(sobj);
/* FreeRTOS */
vSemaphoreDelete(sobj);