FATファイルシステム・モジュール


小規模な組み込みシステム向けの汎用FATファイルシステム・モジュールです。ANSI C準拠でハードウェア・アーキテクチャには依存しないので、必要なワークエリアが確保できれば、PIC, AVR, H8, Z80などほとんどのマイコンでそのまま使用可能です。いろいろな使用形態を考慮して、高速版(FatFs)と省メモリ版(Tiny-FatFs)の2通りを作成してみました。実際に使用するには、各記録メディア(CFC, MMC, SDC, ATA, USB, SCSI等)に対応したディスクI/Oモジュール(サンプルあり)を用意する必要があります。

FatFsモジュールの特徴

Tiny-FatFsモジュールの特徴

メモリ使用

いくつかのコンフィギュレーション・オプションにより、不要な関数を削ってモジュールサイズを削減できます。次に実際のメモリ使用量[バイト]を示します(avrgccの例)。

FatFs
セクション標準最小
プログラム(R/W構成)85266042
プログラム(R/O構成)41723402
静的ワークエリア2
動的ワークエリア548 + 540 * <files>
Tiny-FatFs
セクション標準最小
プログラム(R/W構成)71384862
プログラム(R/O構成)35422778
静的ワークエリア2
動的ワークエリア540 + 24 * <files>

上位レイヤI/F

FatFs/Tiny-FatFsモジュールは、次のファイル操作関数を提供しています。

下位レイヤI/F

FatFs/Tiny-FatFsモジュールは、物理ドライブへのアクセスや現在時刻を得るため、下位レイヤに次のインターフェースを要求します。

資料

FatFs/Tiny-FatFsモジュールはフリーソフトウェアとして教育・研究・開発用に公開しています。どのような利用目的(個人・非商用・商用)でも使用・改変・配布について一切の制限はありませんが、全て利用者の責任の下での利用とします。