OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7243|回复: 3

fatfs移植f_getfree失败

[复制链接]

24

主题

63

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2013-12-12
在线时间
19 小时
发表于 2014-1-17 16:31:17 | 显示全部楼层 |阅读模式
原子兄,你好!

我的FATFS程序在战舰板上调试好,往我自己的板子上移植,CPU是STM32F105RC,发现在读取SD卡容量时一直失败,经JTAG仿真发现:

u8 exf_getfree(u8 *drv,u32 *total,u32 *free)
{
FATFS *fs1;
u8 res;
    DWORD fre_clust=0, fre_sect=0, tot_sect=0;
    res = f_getfree((const TCHAR*)drv, &fre_clust, &fs1);
    if(res==0)
{   
   tot_sect=(fs1->n_fatent-2)*fs1->csize;
   fre_sect=fre_clust*fs1->csize;   
#if _MAX_SS!=512  
tot_sect*=fs1->ssize/512;
fre_sect*=fs1->ssize/512;
#endif  
*total=tot_sect>>1;
*free=fre_sect>>1;
  }
return res;
}    

是 res = f_getfree((const TCHAR*)drv, &fre_clust, &fs1);这条语句返回一直不是0,请问原子兄,注重情况可能是什么原因?往哪个方向去查呢?

谢谢!

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

24

主题

63

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2013-12-12
在线时间
19 小时
 楼主| 发表于 2014-1-17 16:36:20 | 显示全部楼层
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-1-18 19:27:23 | 显示全部楼层
回复【2楼】jmldx:
---------------------------------
FR_DISK_ERR, /* (1) A hard error occurred in the low level disk I/O layer */
检查底层驱动。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

13

主题

62

帖子

0

精华

初级会员

Rank: 2

积分
84
金钱
84
注册时间
2017-3-26
在线时间
34 小时
发表于 2017-3-26 21:35:49 | 显示全部楼层
我也有同样的问题,我是用外部FLASH进行驱动,结果返回值也一直不是0,有没有大神帮忙解释一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-8-22 20:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表