搜索
热门关键词:
uClinux
TI
MCU
三极管
智能电网
手机版
官方微博
微信公众号
登录
|
免费注册
首页
新闻
新品
文章
下载
电路
问答
视频
职场
杂谈
会展
工具
博客
论坛
在线研讨会
技术频道:
单片机/处理器
FPGA
软件/编程
电源技术
模拟电子
PCB设计
测试测量
MEMS
系统设计
无源/分立器件
音频/视频/显示
应用频道:
消费电子
工业/测控
汽车电子
通信/网络
医疗电子
机器人
当前位置:
EEChina首页
›
论坛
›
STM32 DIY
返回列表
查看:
9259
|
回复:
10
[提问]
一个关于FATFS 读SDHC的问题
[复制链接]
chichu9825
chichu9825
当前离线
积分
7268
发表于 2010-5-28 08:57:38
|
显示全部楼层
|
阅读模式
贸泽电子有奖问答视频,回答正确发放10元微信红包
关键词:
FATFS
,
SDHC
我在
STM32
上移植了一个FATFS R0.07c的文件系统,一直工作正常,手里的两个SD卡都没问题。昨天我买了一个新的SD卡,发现识别不出来。
检查一番发现,我的两张卡,都是2G的,一张V1.1的 ,一张V2.0,而新的是2.0SDHC的。
我在PC机上对这张卡进行了几次格式化,也是同样的现象。
我跟踪代码发现:返回错误的地方在auto_mount 里调用的 check_fs函数
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;
}
这里返回的如果是0xAA55
但现在却不是
哪位兄弟知道是怎么回事,请告诉一下,谢谢了
相关文章
•
fatfs写文件后pc机显示要格式化
•
关于FATFS 读SDHC的问题
•
SD和SDHC和SDXC卡的区别是什么
回复
举报
chichu9825
chichu9825
当前离线
积分
7268
楼主
|
发表于 2010-5-28 10:10:42
|
显示全部楼层
disk_read(fs->drive, fs->win, sect, 1)
fs->win[BS_55AA];
fs->win[BS_55AA+1];
第一次读出来的是55AA
第二次就是0000,
这是啥问题呢
回复
支持
反对
举报
lhj200304
lhj200304
当前离线
积分
591
发表于 2010-5-28 11:19:56
|
显示全部楼层
玩过fatfs 这个问题还真没有碰到过
回复
支持
反对
举报
老郭
老郭
当前离线
积分
867442
发表于 2010-5-28 15:09:47
|
显示全部楼层
楼主如果发帖子的时候把分类选为“提问”,那么此帖就显示在最新100贴顶端,大家就都能看到了。(这个我帮你做了)
如果在加上悬赏分,那大家都抢着回答你的问题了(发悬赏贴的话系统会奖励你分数,所以不必担心自己被扣分,自己还能落下点)
回复
支持
反对
举报
chichu9825
chichu9825
当前离线
积分
7268
楼主
|
发表于 2010-5-28 15:21:06
|
显示全部楼层
谢谢版主,我第一次提问,不懂啊。
关于这个问题,到现在为止,我把问题范围缩小了一些,
文件系统挂载时,先读第一个扇区MBR和DPT,这一步,我手头所有的卡都能得到数据。
下一步,文件系统要根据DPT的第一分区的一道信息去读DBR
没问题的卡,都能都会正确的信息,在510和511位置 为0xAA和0x55
但出问题的SDHC卡,读回来的就是一个空白的数据包
我肯定怀疑DBR的位置不对,
另外2张卡 DBR的地址分别为0x000000F3 和 0x00000087
我两张出问题的SDHC 卡,DBR的地址都是 0x00002000
卡我都在PC上多次格式化了,拷贝删除都没问题。
我对这方面的知识只是一知半解,边学边干,哪个同学能看出问题在哪,请多多指教,我会不断把我的进展添加上来,也能让后来者少走弯路吧。
回复
支持
反对
举报
ttlasong
ttlasong
当前离线
积分
41
发表于 2010-5-29 19:46:33
|
显示全部楼层
谢谢学
回复
支持
反对
举报
ttlasong
ttlasong
当前离线
积分
41
发表于 2010-5-29 19:46:54
|
显示全部楼层
要好好学习
回复
支持
反对
举报
ttlasong
ttlasong
当前离线
积分
41
发表于 2010-5-29 19:54:10
|
显示全部楼层
要好好学习
回复
支持
反对
举报
ttlasong
ttlasong
当前离线
积分
41
发表于 2010-5-29 19:54:53
|
显示全部楼层
要好好学习
回复
支持
反对
举报
chichu9825
chichu9825
当前离线
积分
7268
楼主
|
发表于 2010-6-4 11:26:05
|
显示全部楼层
问题已解决,在于SD1.1 SD2.0 SDHC 三种卡的引导区位置不同,导致读取的数据错误。写驱动,必须要亲自看一遍手册,我就是图快,移植的代码没有经过研究。
回复
支持
反对
举报
jieer191
jieer191
当前离线
积分
71
发表于 2010-11-19 20:21:37
|
显示全部楼层
回复
10楼
chichu9825
:
我也碰到同样的问题,楼主能详细的介绍一下解决的思路吗?
谢谢谢谢!!
回复
支持
反对
举报
thjym
thjym
当前离线
积分
61
发表于 2012-9-4 14:02:39
|
显示全部楼层
我最近在移植到FATFS到NAND FLASH上,发现这个0XAA55是什么时候写进去的?跟SD卡还是有很大不同,不知道哪位仁兄移植成功的,可否分享一下心得!谢谢,我QQ:34224308。
回复
支持
反对
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
模拟电子技术
MEMS
新手园地
电工杂谈
软件编程/OS
消费电子
系统设计
音频/视频/显示
电源技术
职业发展
关于我们
-
服务条款
-
使用指南
-
站点地图
-
友情链接
-
联系我们
电子工程网
© 版权所有
京ICP备16069177号
| 京公网安备11010502021702
快速回复
返回顶部
返回列表