文件系统应用问题求助

2019-07-20 21:14发布

我使用文件系统,定义数组存储待写入和待读出文件的数据,数组长度超过300在读写函数中第一个参数文件指针就无法正常处理,所有的值都为0.请问是内存分配的问题还是打开文件函数的问题?

修改代码部分


int main(void)
{        
        u32 total,free;
        u8 t=0;       
        u8 res=0;       
                u16 cnt;


        FIL fil;
        FRESULT resp;
        UINT bww;
                u8 buf[150];
        u16 buf2[150];







        resp=f_open(&fil,"0:/message.txt",FA_CREATE_ALWAYS|FA_WRITE);


f_write(&fil,"alientek test",150,&bww);


f_close(&fil);







resp=f_open(&fil,"0:/message.txt",FA_READ);


f_read(&fil,buf2,150,&bww);


f_close(&fil);





//       
        while(1)
        {
//                LCD_Clear(buf);
               
//resp=f_open(&fil,"0:/blue.BMP",FA_READ);


//f_read(&fil,buf,16384,&bww);


//f_close(&fil);
//               
//displayPIC(buf);


                t++;
                delay_ms(200);                                           
                LED0=!LED0;
        }

}

以上是流程部分代码。


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
正点原子
1楼-- · 2019-07-21 00:14
    FIL fil;
        FRESULT resp;
        UINT bww;
                u8 buf[150];
        u16 buf2[150];
大数组,放全局变量!!!
304069320
2楼-- · 2019-07-21 01:47
后面自己调整了一下,弄出来了。感谢原子哥

一周热门 更多>