FatFs文件系统配置多线程安全

文件系统

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);

你可能感兴趣的:(linux,开发语言,FatFs)