从github上搬来的FATFS v0.12c代码;往U盘里文本文件写任意写符串(不超过30个字符)。第一次插入U盘失败,拔掉U盘再插入,就能写成功。
何故??
FATFS v0.12c源码:https://github.com/stm32duino/FatFs/tree/master/src
char *STR = "aa132cv41654654464rtyrryryrydfgs";
fr = f_open(&fil ,"0:t123.txt",FA_OPEN_ALWAYS|FA_WRITE|FA_READ);
if(fr == FR_OK)
{
printf("文件打开成功!\r\n");
//__disable_irq();
fr = f_write(&fil,STR,strlen(STR),(UINT*)fw);
//__enable_irq();
if(fr == FR_OK)
{
printf("数据写入完成!\r\n");
}
else
{
printf("数据写入失败!\r\n");
}
//HAL_Delay(200);
fr = f_close(&fil); //首次加电,写U盘失败时,此处反回 1;
if(fr == FR_OK)
{
printf("\r\n文件关闭成功.\r\n");
printf("打印关闭文件代码:%d\r\n",fr);
}
else
{
printf("\r\n文件关闭失败!\r\n");
printf("打印关闭文件代码:%d\r\n",fr);
}
}
|