車載外部ストレージ 【FatFs】車載外部ストレージ その127【SDカード直接制御⑩】 SDカードをFatFsでフォーマットしてみる。物理的に壊れることはない。はず。RAMディスクに対してフォーマットしたことはある。FatFs対話モードのコマンドは「fm」。fm <ld#> [<fs type> [<au size> [<align> [<N fats> [<N root>]]]]] 2021.05.29 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その126【SDカード直接制御⑨】 前回FatFsで作成したファイルの確認。ファイル名:long_file_name_file_by_fatfs_to_sdcard.txtファイルサイズ:20000byte内容:'d'を連続で20000文字Windows上でファイルの確認。問題無くファイルを確認できた。 2021.05.28 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その125【SDカード直接制御⑧】 FatFs WinシミュレーションでSDカードに直接制御する話。「FatFsでファイル生成して書き込み、リスト表示、内容表示」してみた。問題無く動作。ファイル名OK。ファイルサイズOK。書き込まれた内容OK。あとは、同じようにWindowsからもこのファイルが見えるかを確認する必要がある。 2021.05.27 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その124【SDカード直接制御⑦】 「FatFsでSDカードのFAT認識」の続き。FatFsでSDカード内のファイルリスト表示。「fl 1:」FatFsでSDカード内のファイル内容表示。「fo 1 long_file_name_file_by_fatfs.txt」「fd」「fc」共に問題無く処理できた。 2021.05.26 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その123【SDカード直接制御⑥】 「FatFsでSDカードのFAT認識」を実施。マウント「fi 1」及びvolume status「fs 1:」は読み出せた。VolToPart配列の定義が反映され論理ドライブ1にSDカードが配置。あとは実際に読み書きをしてみる。(理屈上は動くはず) 2021.05.25 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その122【SDカード直接制御⑤】 FatFs内のVolToPart配列について説明。マルチボリューム、マルチパーティション想定したパラメータ。PARTITION構造体について説明。物理ドライバ番号とパーティション番号が格納される。これにより、論理ドライブ番号、物理ドライブ番号、パーティション番号が紐づけられる。 2021.05.24 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その121【SDカード直接制御④】 OSから見たマウント解除方法説明。CreateFileに「\\.\d」を指定すると論理ドライブのハンドルを取得できる。DeviceIoControlに以下の制御コードを渡すことでOSの論理ドライブアクセスを禁止できる。FSCTL_LOCK_VOLUME。FSCTL_DISMOUNT_VOLUME。 2021.05.23 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その120【SDカード直接制御③】 FatFs改造のソースコード差分提示。次回から以下に注力する形で開設予定。dismount_volume関数。DeviceIoControlがポイントとなる。main.cのVolToPart配列。論理ドライブと物理ドライブ関連。 2021.05.22 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その119【SDカード直接制御②】 FatFs改造方針。DeviceIoControl関数を使用する。余談として、ファイルアクセス以外にデバイスアクセスにもReadFile、WriteFileを使用する。DeviceIoControlの制御コードにFileSystem関連のものがあるので、これでリムーバブルディスクの直接制御はできそう。 2021.05.21 車載外部ストレージ
車載外部ストレージ 【FatFs】車載外部ストレージ その118【SDカード直接制御①】 Windows上からSDカード直接制御に意味があるのか?特にない。面白そうだからやる。方針を提示。まずは改造。その後、FatFs-Windows間で相互運用できるかを確認。一応OS側で保護されているが、HDDにアクセスしないように気を付ける。リムーバブルディスクにしかアクセスできないはず。 2021.05.20 車載外部ストレージ