mkfs.html 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <html lang="ja">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
  5. <meta http-equiv="Content-Style-Type" content="text/css">
  6. <link rel="up" title="FatFs" href="../00index_j.html">
  7. <link rel="stylesheet" href="../css_j.css" type="text/css" media="screen" title="ELM Default">
  8. <title>FatFs - f_mkfs</title>
  9. </head>
  10. <body>
  11. <div class="para">
  12. <h2>f_mkfs</h2>
  13. <p>ドライブ上にFATファイル・システムを作成(フォーマット)します。</p>
  14. <pre>
  15. FRESULT f_mkfs (
  16. BYTE <em>Drive</em>, /* Logical drive number */
  17. BYTE <em>PartitioningRule</em>, /* Partitioning rule */
  18. WORD <em>AllocSize</em> /* Allocation unit size */
  19. );
  20. </pre>
  21. </div>
  22. <div class="para">
  23. <h4>引数</h4>
  24. <dl class="par">
  25. <dt>Drive</dt>
  26. <dd>フォーマットする論理ドライブ(0-9)。</dd>
  27. <dt>PartitioningRule</dt>
  28. <dd>0を指定すると、ドライブの全領域を占める基本DOS区画を作成したあとその区画にファイル・システムを作成します(FDISKフォーマット)。1を指定すると、区画テーブルを作成せずドライブの先頭セクタから直接ファイル・システムを作成します(super floppy (SFD) フォーマット)。</dd>
  29. <dt>AllocSize</dt>
  30. <dd>クラスタ・サイズをバイト単位で指定します。512~32768の範囲でかつ2の累乗でなければなりません。</dd>
  31. </dl>
  32. </div>
  33. <div class="para">
  34. <h4>戻り値</h4>
  35. <dl class="ret">
  36. <dt>FR_OK (0)</dt>
  37. <dd>正常終了。</dd>
  38. <dt>FR_INVALID_DRIVE</dt>
  39. <dd>ドライブ番号が無効。</dd>
  40. <dt>FR_NOT_READY</dt>
  41. <dd>メディアがセットされていないなど、物理ドライブが動作不能状態。</dd>
  42. <dt>FR_WRITE_PROTECTED</dt>
  43. <dd>メディアが書き込み禁止状態。</dd>
  44. <dt>FR_NOT_ENABLED</dt>
  45. <dd>その論理ドライブにワーク・エリアが割り当てられていない。</dd>
  46. <dt>FR_RW_ERROR</dt>
  47. <dd>ディスク・エラーまたは内部エラーによる失敗。</dd>
  48. <dt>FR_MKFS_ABORTED</dt>
  49. <dd>次の理由で開始前に処理が中断された。
  50. <ul>
  51. <li>ディスク・サイズが小さすぎる。</li>
  52. <li>何らかの引数が不正。</li>
  53. <li>そのクラスタ・サイズが使えない。クラスタ数が0xFF7と0xFFF7近辺になるとき発生する可能性がある。</li>
  54. </ul>
  55. </dd>
  56. </dl>
  57. </div>
  58. <div class="para">
  59. <h4>説明</h4>
  60. <p>f_mkfs関数はFATファイル・システムをドライブ上に作成します。リムーバブル・メディアのパーテーショニング・ルールとしてはFDISK形式とSFD形式があり、メモリ・カードではFDISK形式が一般的です。この関数は<em>複数区画には対応していない</em>ので、その物理ドライブの既存の区画は全て削除され、全体が一つの区画になります。</p>
  61. <p>FATタイプ(FAT12/FAT16/FAT32)は、ディスク上の<em>クラスタ数によってのみ決定</em>される[FAT仕様書より]決まりになっていて、それ以外の要因はありません。したがって、どのFATタイプになるかは、ディスク・サイズとクラスタ・サイズに依存します。クラスタ・サイズは大きいほど性能が上がるので、特に小容量のドライブでなければ32768バイトを選択しておけばよいです。</p>
  62. <p>この関数は、FatFsで構成オプション<tt>_USE_MKFS</tt>を選択したときにサポートされます。また、Tiny-FatFsではサポートされません。<p>
  63. </div>
  64. <p class="foot"><a href="../00index_e.html">Return</a></p>
  65. </body>
  66. </html>