写在前面:经过一个多星期的努力,今天终于把uc/fs在de2板上跑通了,现在能够对flash进行格式化,能够建立,读写,删除文件,能够建立目录,等等文件系统应该具备的基本功能都可以实现了,算是一个不小的进步。在这里先要感谢网友棉花糖糖主提供的uc/fs 1.34在lpc2210上的移植例子,里面的flash驱动给了我很大帮助(实际上,我只是在这个驱动的基础上做了一些修改,使之支持de2板上的flash罢了。呵呵,拿来主义,是我一向的主张!^_^)。下面简要说一下我的移植过程,以备查阅。
一、
uc/fs
简单介绍
uc/fs
是美国
micrium
公司研发的一个专门针对嵌入式应用的文件系统,支持
FAT12
,
FAT16
和
FAT32
,可以用于大部分常见的存储器件,比如
RamDisk
,
SMC/NAND Device
,
MultiMedia & SD card Device
,
CompactFlash card & IDE Device
,
Nor Flash Device
,
SerialFlash Device
等等。当然,要使用这些存储器件,就需要相应的驱动程序。我们的工作,实际上就是修改,并完善相应的驱动程序,使之适用于我们自己的系统。
现在网上的可以下载的源码是
2.0
版本的,不过好像大家用的比较多的是
1.34
版,而且我得到的例子也是
1.34
版的,所以就在此基础上进行我的工作。
二、
uc/fs
设备驱动结构
uc/fs
以一种宏定义的形式来管理设备,这些定义在
API
文件夹下的
fs_info.c
文件中可以找到,比如
flash
设备的定义如下:
#if
FS_USE_FLASH_DRIVER
#define
FS_DEVINFO_DEVFLASH {
"flash"
, &FS__fat_functable, &FS__flashdevice_driver, FS_CACHEINFO_FLASH_DRIVER 0 },
#else
#define
FS_DEVINFO_DEVFLASH
|
</