OpenEdv-开源电子网

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

在用FATFS文件系统,一直死在这儿,过不去....

[复制链接]

3

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2012-10-8
在线时间
1 小时
发表于 2015-5-21 20:33:02 | 显示全部楼层 |阅读模式
5金钱
[mw_shl_code=c,true]/*-----------------------------------------------------------------------*/ /* Load a sector and check if it is an FAT Volume Boot Record */ /*-----------------------------------------------------------------------*/ static BYTE check_fs ( /* 0:FAT-VBR, 1:Valid BR but not FAT, 2:Not a BR, 3isk error */ FATFS *fs, /* File system object */ DWORD sect /* Sector# (lba) to check if it is an FAT boot record or not */ ) { if (disk_read(fs->drv, fs->win, sect, 1) != RES_OK) /* Load boot record */ return 3; if (LD_WORD(&fs->win[BS_55AA]) != 0xAA55) /* Check record signature (always placed at offset 510 even if the sector size is >512) */ return 2; if ((LD_DWORD(&fs->win[BS_FilSysType]) & 0xFFFFFF) == 0x544146) /* Check "FAT" string */ return 0; if ((LD_DWORD(&fs->win[BS_FilSysType32]) & 0xFFFFFF) == 0x544146) return 0; return 1; }[/mw_shl_code]
走了这步之后if (LD_WORD(&fs->win[BS_55AA]) != 0xAA55)
就return 2了;

大家好才是真的好
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2012-10-8
在线时间
1 小时
 楼主| 发表于 2015-5-21 20:40:05 | 显示全部楼层
这是说没有BRM区?最终返回是FR_NO_FILESYSTEM,没有有效的FAT卷?
大家好才是真的好
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-5-21 21:17:24 | 显示全部楼层
讲卡格式化一下看下,选择FAT32格式
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

3

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2012-10-8
在线时间
1 小时
 楼主| 发表于 2015-5-21 21:50:06 | 显示全部楼层
回复【3楼】八度空间:
---------------------------------
格了一遍了,还是在这儿过不去
大家好才是真的好
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-5-21 21:54:13 | 显示全部楼层
回复【4楼】renqinglei:
---------------------------------
disko.c这个文件还没移植好吧
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

3

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2012-10-8
在线时间
1 小时
 楼主| 发表于 2015-5-22 08:31:23 | 显示全部楼层
回复【5楼】八度空间:
---------------------------------
文件系统移植是用的原子哥的模板,我还没有自己尝试移植
大家好才是真的好
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-5-22 21:14:53 | 显示全部楼层
回复【6楼】renqinglei:
---------------------------------
换张卡试下,你的什么板子,自己画的?还是原子哥的板子
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

3

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2012-10-8
在线时间
1 小时
 楼主| 发表于 2015-6-8 17:35:53 | 显示全部楼层
回复【7楼】八度空间:
----------------------------
换了张2G的卡读不了,板子自己做的
大家好才是真的好
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-6-8 21:24:34 | 显示全部楼层
回复【8楼】renqinglei:
---------------------------------
仿真看下文件系统函数返回什么错误
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2015-5-23
在线时间
0 小时
发表于 2015-11-25 16:47:10 | 显示全部楼层
回复【9楼】八度空间:
---------------------------------
我也遇到同样的问题,返回FR_NO_FILESYSTEM错误。我用的nandflash,底层单独读写数据都是正确的。请八度哥指点。
回复

使用道具 举报

14

主题

58

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
332
金钱
332
注册时间
2012-5-3
在线时间
68 小时
发表于 2015-11-26 11:53:57 | 显示全部楼层
这个问题我也碰到过,后来发现是数据还没有读出来,但是代码里面就进行比较,所以会出错,返回FR_NO_FILESYSTEM。有仿真器跟踪就可以查出来。
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-11-26 15:01:15 | 显示全部楼层
回复【10楼】cris:
---------------------------------
这个和你的底层操作相关的,底层不对,直接上文件系统的话就会返回这个错误
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-11-26 15:01:47 | 显示全部楼层
回复【11楼】bs1234:
---------------------------------
还是看看底层操作函数
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

1

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
195
金钱
195
注册时间
2015-11-26
在线时间
25 小时
发表于 2015-11-26 17:08:08 | 显示全部楼层
看你的  分区大小 是不是超过了他的最大 512 字节    这就会出现  写入进的文件系统  标志   被重新 擦除   在你创建新的文件的时候
回复

使用道具 举报

39

主题

131

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1439
金钱
1439
注册时间
2015-12-26
在线时间
208 小时
发表于 2016-12-29 22:01:00 | 显示全部楼层
楼主,我也是和你一样的问题,就是LD_WORD这个值返回2,SD卡初始化都正常,也能获取到SD的容量等信息,不知道楼主解决没,我用的是STM32F405RGT SDIO 8G卡
回复

使用道具 举报

28

主题

104

帖子

0

精华

初级会员

Rank: 2

积分
150
金钱
150
注册时间
2018-1-11
在线时间
64 小时
发表于 2022-5-3 17:36:09 | 显示全部楼层
啊,我也懵了,我是用cunbemx生成的。我出现的情况是不使用FreeRTOS。我FATFS+SDcard+USB HOST(U盘),是正常的。但是我上了FreeRTOS就会在这里卡住,大部分都会卡在这里,但是偶尔又可以过
回复

使用道具 举报

28

主题

104

帖子

0

精华

初级会员

Rank: 2

积分
150
金钱
150
注册时间
2018-1-11
在线时间
64 小时
发表于 2022-5-3 18:17:30 | 显示全部楼层
我好像是FreeRTOS里面给USB处理线程的任务栈小了,我加大栈,就好了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-27 08:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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