移植的fats文件系统后,在W25Q64上新建文件,在挂起和格式化W25Q64都成功后还是不能新建,返回的错误为12,找不到原因,请帮忙看下
[mw_shl_code=c,true] u8 res;
u16 temp=0;
Stm32_Clock_Init(9); //系统时钟设置
uart_init(36,9600); //串口初始化为9600
delay_init(72); //延时初始化
LCD_Init();
SPI_Flash_Init();
switch(SPI_FLASH_TYPE)
{
case W25Q64:
temp=8*1024;
break;
default :
LCD_ShowString(0,220,200,16,16,"Flash Error!!");
break;
}
LCD_ShowString(0,120,240,320,12, "Ex Flash: KB");
LCD_ShowxNum(9*6,120,temp,4,12,0);//显示flash大小
if(!disk_initialize(0))
LCD_ShowString(0,0,200,16,16,"Init SDCARD Success"); //fatfs可以管理多个介质的分区,
else
LCD_ShowString(0,0,200,16,16,"Init SDCARD Filed");
if(!disk_initialize(1))
LCD_ShowString(0,16,200,16,16,"Init FLASH Success"); //fatfs可以管理多个介质的分区,
else
LCD_ShowString(0,16,200,16,16,"Init FLASH Filed");
POINT_COLOR=RED; //画笔颜色
BACK_COLOR=WHITE; //背景色
// if(!f_mount(0,&fs[0]))
// {
// LCD_ShowString(0,32,200,16,16,"Success");
// }
// else
// LCD_ShowString(0,32,200,16,16,"Filed!");
if(!f_mount(1,&fs)) //挂载FLASH ,安装FATFS,就是给FATFS分配空间
{
LCD_ShowString(0,48,200,16,16,"Success");
}
else
LCD_ShowString(0,48,200,16,16,"Filed!");
if( !f_mkfs(1,1,4096)) //格式化外部FLASH 成功
{
LCD_ShowString(0,64,200,16,16,"Format FLASH Success!");
}
else
LCD_ShowString(0,64,200,16,16,"Format FLASH Filed!");
// if(!f_mkdir("new2"))
// {
res=f_mkdir("wang2");
// LCD_ShowString(0,80,200,16,16,"Creat Success!");
LCD_ShowxNum(100,80,res,8,16,0); //此处LCD上显示为12
// }
// else
// LCD_ShowString(0,80,200,16,16,"Creat Filed!");[/mw_shl_code]
|