FAT16-32 File System Driver for ATMEL AVR

This project is a FAT16/32 File System Driver for ATMEL AVR. This
file system driver was written because our needs to read and write a hard drive
using a microcontroller. We look at Internet but we don’t found a good code to do
this, specifically in ATMEL AVR microcontroller series. The mostly codes found
were written to mp3 players, and only read data (don’t write) from FAT file system
and mix mp3 specific functions with printf functions. We found a few companies
that have some FAT codes to microcontrollers but with expensive prices. So we
decide to do our own code and share it to all community. It’s a real generic library.
You can use this to do an mp3 player, or a data logger, or anything else your mind
tells you. All the code was written following the Microsoft Specification in their
document “Microsoft Extensible Firmware Initiative FAT32 File System
Specification1” and there are some limitation because the nature of
microcontrollers and their limitations about memory and speed. Use this code at
your own risk. If you find any problems in this code, feel free to tell us. We
reminder you that it’s distributed under the GNU Public License, so you can use
and distribute it to anyone, provided that you conspicuously and appropriately
publish on each copy an appropriate copyright notice and disclaimer of warranty.
Complete Documentation
Source Code