OpenEdv-开源电子网

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

f_mkfs格式化电脑不识别,电脑格式化f_mkfs不识别

[复制链接]

3

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2016-11-13
在线时间
40 小时
发表于 2018-6-10 14:18:02 | 显示全部楼层 |阅读模式
22金钱
本帖最后由 fantasyfeather 于 2018-6-10 14:18 编辑

       自己画了个电路板,焊接上micro SD卡和STM32F405RG的单片机,自编加移植原子哥的驱动代码,SD卡底层驱动没什么问题了,基本信息都能正常读。但是Fatfs(0.13版本,换0.10版本也不行)文件系统出了问题,主要是这样:
      1, 最开始在打开创建txt文档的时候, 返回错误代码13,网上查了一下是找不到文件系统,需要把磁盘格式化
      2, 调用f_mkfs函数格式化之后 f_mkfs("0", FM_FAT32, 4096, work, sizeof(work)); Fatfs读写都正常了
      但是新的问题出现了,把micro SD卡用读卡器插到电脑上,提示需要格式化
      3, 好吧,用电脑格式化之后重新放到单片机上,又是错误代码13
      尝试过修改f_mkfs的参数,path 写过0,1,簇大小设置过512,4096,还直接写过0,FAT32改成FAT编译没通过,这些不同的参数尝试过后还是没解决,
      总结起来,问题是:f_mkfs格式化电脑不识别,电脑格式化f_mkfs不识别
      求解决办法?

最佳答案

查看完整内容[请看2#楼]

这是无法抢救了,原因是什么?是不兼容吗?能不能通过改fatfs的源码解决, 我以个金士顿8G卡,一个闪迪8G卡,都不能用
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2016-11-13
在线时间
40 小时
 楼主| 发表于 2018-6-10 14:18:03 | 显示全部楼层

这是无法抢救了,原因是什么?是不兼容吗?能不能通过改fatfs的源码解决,
我以个金士顿8G卡,一个闪迪8G卡,都不能用
回复

使用道具 举报

3

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2016-11-13
在线时间
40 小时
 楼主| 发表于 2018-6-10 19:23:35 | 显示全部楼层
我给自己顶一顶
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2018-6-11 01:43:53 | 显示全部楼层
你电脑格式化是格式化成FAT32么? 然后不用单片机格式化的时候,能读出已用容量和剩余容量信息么?
回复

使用道具 举报

3

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2016-11-13
在线时间
40 小时
 楼主| 发表于 2018-6-12 13:17:16 | 显示全部楼层
本帖最后由 fantasyfeather 于 2018-6-12 13:19 编辑
正点原子 发表于 2018-6-11 01:43
你电脑格式化是格式化成FAT32么? 然后不用单片机格式化的时候,能读出已用容量和剩余容量信息么?

是FAT32,能够读出已用容量和剩余容量,就是FATFS创建文件的时候失败,返回错误13

Card Type:SDHC V2.0
Card ManufacturerID:159
Card RCA:1
Card Capacity:7458 MB
Card BlockSize:512


****** FatFs Example ******

mount sucess!!!
SD_ReadBlock,errorstatus = 0
open file error : 13
write file error : 9
close error : 9
SD_ReadBlock,errorstatus = 0
open file error : 13
read error!!! 9
close error!!! 9
FatFs is working well!!!

用单片机格式化之后错误都没有了,但是电脑打开的时候会提示要求格式化
回复

使用道具 举报

58

主题

6291

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11406
金钱
11406
注册时间
2014-4-1
在线时间
1282 小时
发表于 2018-6-12 17:11:15 | 显示全部楼层

用过这个指令,也不成功,后来放弃了。


回复

使用道具 举报

3

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2016-11-13
在线时间
40 小时
 楼主| 发表于 2018-6-12 18:28:50 | 显示全部楼层
xuande 发表于 2018-6-12 17:11
用过这个指令,也不成功,后来放弃了。

后来怎么解决的呢?怎么样让电脑和SD卡通用数据
回复

使用道具 举报

58

主题

6291

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11406
金钱
11406
注册时间
2014-4-1
在线时间
1282 小时
发表于 2018-6-12 20:26:31 | 显示全部楼层
fantasyfeather 发表于 2018-6-12 18:28
后来怎么解决的呢?怎么样让电脑和SD卡通用数据


后来避开这个事,先用PC格式化,然后上板子。

回复

使用道具 举报

3

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2016-11-13
在线时间
40 小时
 楼主| 发表于 2018-6-12 20:45:15 | 显示全部楼层
xuande 发表于 2018-6-12 20:26
后来避开这个事,先用PC格式化,然后上板子。

唉!我就是用PC格式化以后,FatFS就不认识它了,才用 f_mkfs,但是用FatFS的 f_mkfs格式化以后电脑又不认识它了。导致单片机和PC没办法共享SD卡的数据,有一个能认识也没这么多烦心事了
回复

使用道具 举报

58

主题

6291

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11406
金钱
11406
注册时间
2014-4-1
在线时间
1282 小时
发表于 2018-6-12 22:56:37 | 显示全部楼层

仔细看下原子的教材吧,注意头文件里的宏定义。
应当能解决。

回复

使用道具 举报

3

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2016-11-13
在线时间
40 小时
 楼主| 发表于 2018-6-13 20:58:45 | 显示全部楼层
正点原子 发表于 2018-6-11 01:43
你电脑格式化是格式化成FAT32么? 然后不用单片机格式化的时候,能读出已用容量和剩余容量信息么?

哦,对不起,之前的回复没看清,是我搞错了。重新回复一次:
1,电脑格式化成的是FAT32
2,这个之前看错了,展示了SD卡的容量,把exf_getfree函数也弄过去,发现用f_mkfs格式化以后,8G的卡用FATFS读出来成64G了。
3,用电脑格式化以后放回单片机,exf_getfree函数直接出错,无法读取容量。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2018-6-14 01:20:31 | 显示全部楼层
fantasyfeather 发表于 2018-6-13 20:58
哦,对不起,之前的回复没看清,是我搞错了。重新回复一次:
1,电脑格式化成的是FAT32
2,这个之前看 ...

换卡吧
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-12-21
在线时间
0 小时
发表于 2018-12-21 11:27:51 | 显示全部楼层
楼主,后来解决没有。
1,我用f_mkfs格式化为FAT32后,内存变成原来的一半了,单片机和PC都能获取SD卡数据。
2,后来在diskio.c中改了FLASH_SECTOR_COUNT的宏定义(为了格式化后内存和原来一样大),用f_mkfs格式化提示成功,但是PC获取不到SD卡数据(提示格式化)。
回复

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2018-5-27
在线时间
31 小时
发表于 2024-4-28 22:47:57 | 显示全部楼层
就是卡的问题,气死我了,我玩zynq也遇到了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-22 15:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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