shower.xu 发表于 2015-3-17 08:59
1.if(res==FR_OK)增加一个else,设置一个中断仿真一下res的值,能看到什么原因读取.
2.参考原作者的描述http://www.elm-chan.org/fsw/ff/en/lseek.html
3.关闭IDE的优化选项试试
谢谢你,原因好像是IAR的优化问题,我把优化关闭之后就可以走通,但是我发现一个新问题。
res = f_open(&file,"ma.bmp", FA_OPEN_ALWAYS | FA_READ); //定义ma.bmp为已存在,读取
res = f_read(&file, &bmp, sizeof(bmp), &br);
if((bmp.pic_head[0]=='B')&&(bmp.pic_head[1]=='M')) //文件格式标记为BM
{
res = f_lseek(&file,((bmp.pic_data_address_h