fatfs api的使用实例

背景:在之前工作为故事机添加vad的功能的时候,在抓取音频处理的时候都需要用到fatfs的api接口。

在抓取音频的时候需要将从结构上录取到的音频写入到sd卡中,相关的代码片段如下:

1.挂载

res = f_mount(&fatfs, _T(“0:”), 1);
if(!res)
{
		printf(“fmount is ok\r\n”);
}

2.打开并创建文件

FIL fsrc;
f_open(&fsrc, “SD:/record.pcm”, FA_CREATE_ALWAYS | FA_WRITE);

3.写文件操作

f_write(&fsrc, buf, len, &wlen);//len: numbers  of write byte to write. wlen: number of write bytes

4.关闭文件

f_close(&fsrc);

在调试vad的功能时候需要从sd卡中读取录取好的音频。

1.挂载

res = f_mount(&fatfs, _T(“0:”), 1);
if(!res)
{
		printf(“fmount is ok\r\n”);
}

2.打开并创建文件

FIL fwav;
f_open(&fwav, “SD:/record.pcm”, FA_READ);

3.读文件

f_read(&fwav, buffer, sizeof(buffer), &rlen);

4.关闭文件

f_close(fwav);

static FRESULT res = 0;
static FATFS fatfs;
res = f_mount(&fatfs, _T(“0:”), 1);
if(!res)
{
	printf(“fmount ok”);
}


char data[320];
int bytes = 0;
FRESULT frses;
FIL fp;
f_open(&fp, fn, FA_READ|FA_WRITE);
f_lseek(&fp,44);
f_read(&fp, data, 320, &bytes);
f_close(&fp);

猜你喜欢

转载自blog.csdn.net/u010299133/article/details/89103626