DIY U盘项目之 文件系统

[复制链接]
8064|21
 楼主| walnutcy 发表于 2009-2-19 23:17 | 显示全部楼层 |阅读模式
<H1>原文地址在:DIY&nbsp;U盘项目之&nbsp;文件系统&nbsp;</H1><br />刚刚写完,赶紧在这里贴出来,呵呵<br /><br />在上一篇,我们已经完成了串口控制台,可以实现命令的输入,回显执行等。<br />这里又在此基础上添加了软件模拟SPI,以及AT45DB161的驱动。<br />(这一部分是直接使用古道热肠提供的UDisk中的代码,省却了一部分工作)<br />目前已实现AT45DB161里的Fat文件系统识别及文件读取,不过SD卡还有一些问题,<font color=#FF0000>我这边感觉卡槽很松,初始化不成功,连SD卡都找不到。手头有板的兄弟可以帮忙试试,输emount命令看efsl初始化SD卡会不会成功即可。成功的话,测试一下els,看看能不能列出当前目录,</font><br />把diskio.c中的宏:&nbsp;#define&nbsp;AT45DB161_FS_TEST&nbsp;&nbsp;&nbsp;1<br />更改为0,即可用fatfs读取SD卡,使用流程是,先mount,再ls,<br />下图为我这用fatfs读取at45db161里的fat系统,<br /><img src="http://space.**/upload/2009/2/19/b7d46afc-de1d-4341-826f-b399544413a8.JPG"><br />注:(AT45里的fat系统是我测试udisk工程时用PC机格式化得到的,并在里边放了一个文本文件)<br />[/url]&nbsp;<br />软件的目录结构如下图所示:<br /><img src="http://space.**/upload/2009/2/19/3ac4d357-8a0a-45b1-af72-3c727b48b68d.jpg"><br />source目录里存放的是控制台及spi驱动的代码,<br />efsl里存放的是efsl文件系统的源码,FatFS里存放的是FatFS的源代码,<br />(之前关注过青藤门客播报站的兄弟一定看到过这两个源码包,有提供过下载)<br />这里不再多讲其具体内容,不过计划后期再写一个关于文件系统的基本数据介绍,其实也即Fat文件系统的标准规范里的内容。<br />点这里下载工程源码包:[url=http://space.**/upload/2009/2/19/b8e9785f-6861-4aa7-9574-83c70271070b.rar]<img src="http://www.**/images/FileIco/rar.gif">
 楼主| walnutcy 发表于 2009-2-19 23:18 | 显示全部楼层

沙发自己占

AT45里的那个LOG.TXT就是老古之前提供的udisk里的那个《LOG.TXT》
古道热肠 发表于 2009-2-20 11:39 | 显示全部楼层

您读SD卡时,硬件要跳线,AT45DB161D和SD卡为二选一

先把开发板上的跳线跳到SD卡有效状态,再用我的SD测试程序测试一下,看看读取SD卡扇区是否正常.<br />发货时默认跳到AD45DB161D有效.
 楼主| walnutcy 发表于 2009-2-20 20:08 | 显示全部楼层

老古,你太小瞧我了,

这些我都试过了,<br /><br />你的原理图和板我应用到的部分都自己量过,家里只有一个万用表,<br /><br />没示波器和逻辑分析仪,&nbsp;没法抓波形,<br /><br />你的那个程序我试过了,&nbsp;也读不出,&nbsp;&nbsp;<br /><br />你可以把软件写到你的板子上试下,
古道热肠 发表于 2009-2-21 10:09 | 显示全部楼层

用仿真器跟踪一下吧.

看看初始化SD卡在那1步出错,根据错误号再判定BUG在哪.<br />有仿真器外带1个万用表,能搞定80%故障.
古道热肠 发表于 2009-2-21 10:42 | 显示全部楼层

编译了一下,顺利通过.果然大手笔,占用28k程序空间

哈哈,跟着walnutcy学Efs,做walnutcy粉丝。
 楼主| walnutcy 发表于 2009-2-22 12:25 | 显示全部楼层

那个fatfs也不错的,好多网友把它用到项目里了,

  
emailli 发表于 2009-2-26 09:27 | 显示全部楼层

LZ可以尝试看看是否SD卡兼容性不好导致

用一个品牌的SD卡试试
wswh2o 发表于 2009-2-26 09:59 | 显示全部楼层

不错

咱两的应该整合起来
chenglcd 发表于 2009-2-26 23:06 | 显示全部楼层

请教问题!

1。在编辑程序是用的软件是哪个啊?<br />2.程序编译成BIN时又是用哪个软件呢?<br />3.程序是通过串口在线烧录到FLASH里面吗?<br />4。在线烧录软件是哪个啊?<br />5。没有仿真器可以玩吧?<br />其实就一句话:怎样由源文件生成BIN文件,再把BIN烧到板上,以及注意事项。<br /><br />今天收到了&nbsp;古道热肠&nbsp;大侠寄来零件,在此表示热烈的感谢!零件都焊好了,改天上个图给大伙看看!现在急着验证我焊的板子呢!<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;我一直从事硬件工作,对软件不通,想学!还望大侠多多指教啊!
古道热肠 发表于 2009-2-27 11:18 | 显示全部楼层

回楼上

1.编译调试用的是MDK3.1X&nbsp;,英蓓特的网站上有评做版下载<br />2.HEX转换成Bin可以用很多工具软件实现,比如HexBin.exe<br />3.程序可通过串口或USB口下载到芯片的Flash中<br />4.在线烧录软件是BA<br />5.没有仿真器可以玩,用IDE的软件仿真功能调试,调试完成后生成BIN文件下载到开发板中验证功能即可.有问题或异常再改源程序,再验证.<br /><br />哈哈,看来得尽快拿出一个简明操作手册了.俺这就去整理吧,不能灌水了.
 楼主| walnutcy 发表于 2009-2-28 15:41 | 显示全部楼层

呵呵,要做一个基本的扫盲教程,

  
 楼主| walnutcy 发表于 2009-2-28 15:42 | 显示全部楼层

另:我用的是sandisk的卡,

  
chenglcd 发表于 2009-3-2 19:31 | 显示全部楼层

程序可通过串口或USB口下载到芯片的Flash中

程序可通过串口或USB口下载到芯片的Flash中,<br />应该是用专门的软件吧,是BA吗?有全称吗?我GOOGLE不到呢?
 楼主| walnutcy 发表于 2009-3-2 22:12 | 显示全部楼层

LS的为什么不去我的博客看看呢?《初识AT91SAM7S64芯片》

  <br /> 相关链接:<a href='http://blog.**/walnutcy/199402/message.aspx'>http://blog.**/walnutcy/199402/message.aspx</a>
chenglcd 发表于 2009-3-3 19:58 | 显示全部楼层

这样啊

原来:<br />SAM-BA&nbsp;全称:&nbsp;SAM&nbsp;-&nbsp;Boot&nbsp;Assistant&nbsp;(SAM-BA?)
wswh2o 发表于 2009-3-14 22:52 | 显示全部楼层

怎么格式化???

不格式化啥也用不了,udisk在哪也没找到
宇宙飞船 发表于 2009-3-15 18:54 | 显示全部楼层

好热闹!

  
mon51 发表于 2009-4-18 23:16 | 显示全部楼层

文件加密了,密码是多少?

  
古道热肠 发表于 2009-4-19 10:39 | 显示全部楼层

印象中密码是楼主的ID,walnutcy

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

本版积分规则

111

主题

1444

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部