找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 939|回复: 2
打印 上一主题 下一主题

关于SD读操作与FAT文件系统的问题

[复制链接]

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

积分
13638
跳转到指定楼层
1#
发表于 2008-4-8 20:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
一个文件可能由多个簌组成,这些簌可能分布磁盘的不同位置(考虑文件可能不是连续分布在磁盘)从FAT表中可以读取到该文件的所有簌位置 假如第一个簌地址就是02,其对应的扇区=4+2+500+32=538 那么在读指令的地址参数就填入538对应的二进制数,这样就可以读本扇区的数据了既然一个簌包含连续的32扇区那么在接收完第一个单512字节数据完成后,SD状态机应该返回到stand-by状态等待下一个读指令的发出吧(这时地址就自动累加538+1),直到538+31为止一个簌块读取结束。然后获取FAT表中下个簌的地址并换算为对应的扇区号,操作一样等读到文件最后一个簌区的时候,是不是根据文件大小来确定最终读指令操作结束(也就是在文件读完毕的时候应该有个系统响应信号给控制器吧) 【在阅读规格书的过程中,里面另一个就是多块读指令,在指令发出去以后它应该是不间断的发送512字节数据块,终止次操作要靠CMD12;那这个多块读指令发出去之后,SD卡应该是默认按照连续簌来自动读扇区吧?或者通过此办法来累积32次,表示一个簌读完,如果下一个簌不是连续的则发CMD12指令终止然后再发新簌的首个的扇区地址,如果是连续的则重新计数,如此反复,这样是否也可行呢】 那么在实际的操作过程中就可以这样操作吧:读取512字节的系统区,用一个计数器把关键字节的数据提取出来作为数据区偏移的依据,例如保留区,隐藏区,FAT表大小,根目录(默认就是32个扇区)记录下拉,这样首个数据区地址就可以定了,后面的地址只是在这个基础上的累加 【FAT表的疑惑】我用一个磁盘读取工具读格式化的FAT16文件系统,在分区表那块怎与一些文档介绍的不同?隐藏区的扇区用磁盘读取工具无法读出来吗?是不是计算数据区的位置在保留区,fat表大小,根目录,再自动吧隐藏区的扇区加上就是数据区的首扇区了吧
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

积分
13638
2#
 楼主| 发表于 2008-4-8 21:03 | 只看该作者
512字节系统区截图

512字节的系统区.jpg (268.49 KB, 下载次数: 6)

512字节的系统区.jpg

6

主题

227

帖子

2163

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2163
3#
发表于 2011-2-21 16:44 | 只看该作者
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-27 05:42 , Processed in 0.059745 second(s), 35 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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