原创
单片机开发U盘
2007-11-9 15:30
3218
7
8
分类:
汽车电子
整理开发过程中的笔记,希望对刚刚开始做U盘的朋友有所帮助。
对于U盘可以采取两种方式:1.把U盘当作一个打的RAM这种方法不需要分析复杂的FAT格式。提起这种说法,很多同仁不屑。我觉得不然,所谓 “简单就是科学”往往最简单,最直接的东西是最好的东西也是最可靠的东西。如果您只需要将数据存储到U盘,然后把U盘拿到计算机上分析数据的化。完全可以采取这种思路。就是把硬件都接好,却定好需要的空间,分配好地址。单片机把需要存储的数据写入到相应的地址,这样U盘也就是一个
大的RAM了。对于数据的读出,将串口接到计算机的RS232上,单片机将U盘的固定地址的数据依次读出来,发送
到串口上就可以。这样,U盘和外部RAM的区别就是读写单位是一个簇(容量比较小的U盘一个扇区就是一个簇)。2.分析FAT格式.在进行读写U盘之前,先不要急着调试程序。要紧的是了解U盘的结构。其实U盘也就是
一块硬盘,只不过容量比较小。U盘的FAT表,FDT表和目录登记项与硬盘的结构完全一样。所以,如果您不了解
硬盘的结构,就试图读写成功是不可能的。在此我向大家推荐一本书《硬盘扇区读写技术》宋群生 主编的。
这本书里面详细的介绍了,硬盘的FAT表 FDT表 他们的具体参数的内容以及,他们在U盘中的分布位置。
并且针对FAT16 FAT32分区格式的硬盘做了具体的分析。
3.单片机读写U盘的文件系统。对于FAT格式的文件系统的功能是强大的。但是我觉得对于单片机这个小小的芯片,并且是没有移植操作系统的单片机系统来说,取其关键就足矣。对于单片机系统来说约简单越好。在计算机上,在WINDOWS下进行文件系统是很简单的。但是对于单片机难度就太大了,就象一条鲸游从大海入了一条小河,想让他在河里灵活自如的游动是不可能的。那怎么办,减肥。是的,去掉文件系统多余的部分取其精华。
当然文件系统,是肯定少不了FAT FDT表的。这也是FAT格式的关键之所在。找到这两个表,进行分析,取出
需要的关键字节,进行运算,根据簇链寻址的原理就可以灵活的读写U盘。
以上是本人在开发读写U盘过程中的一点心得,有不对的地方,希望大家笔下留情。
用户120337 2007-11-10 09:09
喜欢这种谈自己经验的博文