問題タブ [usb-mass-storage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
79 参照

android - PC から電話のストレージにデータをコピーし、アプリが変更を正しく検出できるようにするにはどうすればよいですか?

携帯電話が PC に接続されている間に、携帯電話のストレージに対するデータの変更の読み取り、書き込み、および検出をアプリで行うことはできますか?

注: アプリは Android 4.1 以降で使用されます

0 投票する
0 に答える
154 参照

windows-ce - USBマスストレージ、wec2013

SDカードをデバイスからアンマウントしようとしただけでPCにマウントされなかったWEC2013を使用して、USBマスストレージ機能を使用してPCでSDカードを公開する方法は?

0 投票する
1 に答える
2241 参照

usb - STM32Cube を使用した USB MSC

STM32Cube を使用して単純な USB MSC プロジェクトを生成しています。STM32F417VGを使用しています。
そこでUSB_OTG_FS、Device_only とUSB_DEVICE- Class For FS IP - Mass Storage Class を選択しています。
次に、ソース コードを生成し、コンパイルしてボードにダウンロードし、USB ケーブルを PC に接続しても何も起こりません。
私は何を間違っていますか?

0 投票する
0 に答える
224 参照

linux - ファイルシステム層で動作する大容量ストレージに代わる USB はありますか?

ファイルシステム層で動作する大容量ストレージに代わる USB はありますか?

目標は、ブロック デバイスではなく、ファイル システムとしてマウント可能な USB デバイスを作成することです。

違いは、ファイルシステム レイヤーで動作することで、デバイスは、ホスト OS とデバイス自体の両方から発生するバッキング ストレージへの書き込みを調整できることです。

ブロックデバイスレイヤーでインターフェースするということは、デバイスがホストOSにマウントされるとすぐに書き込みを停止する必要があることを意味します(電話のSDカードが使用していたように)。

ビッグ 3 OS (Linux、OSX、Windows 7+) のサポートに関心がありますが、Andriod、iOS、またはその他の Unix バリアントのサポートには関心がありません。

0 投票する
0 に答える
456 参照

android - MTPDevice.open(usbDeviceConnection) が false を返す

USBデバイス内のすべてのファイルを印刷したい。mtpDevice を開こうとしていますが、open 関数が false を返します。

助けてください。

前もって感謝します。

0 投票する
1 に答える
861 参照

arm - USB マスストレージ クラスは、タイムアウト後に再列挙する必要がありますか?

これはばかげた質問かもしれませんが、

組み込み Linux を実行する ARM-CortexM4 プラットフォーム (STM32F4 シリーズ) で USB ストレージ デバイスをデバッグしていました。ARM は USB ホストとして動作しており、USB のフル スピード (12Mb/s) でサム ドライブと通信しようとします。

ここに問題があります。列挙が成功し、BULK 転送を介していくつかの SCSI コマンドが実行されると、容量とすべてを正しく読み取ることができます。しかし、約 15 秒後にこれらの SCSI コマンドを (同じ条件で) 再度送信しようとすると、USB ホスト コントローラーは「トランザクション エラー」を返します。ホスト コントローラがタイムアウトします。問題は、タイムアウト後にシステムを再列挙または再プローブする必要があるような USB 大容量ストレージ クラスまたは SCSI システムのタイムアウト メカニズムがあるかどうかです。

これは、私のプログラムのばかげたエラーが原因であるか、特定のハードウェアの制限が原因である可能性があることを理解しています。しかし、PC 上の Linux で usbmon モジュールを使用してまったく同じサム ドライブで転送をキャプチャすると、オペレーティング システムが実際にシーケンス プローブ コマンド (Read-max-Lun に続いて Test-unit-ready) を 5 ごとに送信することがわかります。これが、私の PC でサム ドライブが故障しない理由である可能性があります。

ありがとう!返信をお待ちしております。

0 投票する
2 に答える
906 参照

c - 任意の FAT ファイルシステムをファイルに作成するか、プログラム メモリに直接作成します。

私は、FAT ファイルシステムとして 8MB の RAM チャンクを使用する USB 大容量記憶装置ドライバーを作成している組み込みシステムを作成しています。

当時は、OS が RAM 領域をゼロにして FAT パーティション自体をフォーマットできるようにすることは理にかなっていましたが、Jan Axelson (USB に関する本の人気著者) のPORTS フォーラムで診断している問題に遭遇しました。この問題は、ドライブ内のブロックの消去に関連しており、USB エニュメレーションの前にメモリ領域を FAT ファイルシステムに事前フォーマットすることで回避できる場合があります。次に、ドライブが正常に動作するかどうかを確認できました。理想的には、事前にフォーマットされたパーティションには、読み取り操作をテストするためのファイルが含まれています。

どうにかして自分の OS (OSX) に 8MB の FAT ファイルシステムのモックを作成してマウントし、それにファイルを書き込んで、プロジェクトに含めるためにイメージ ファイルにエクスポートできればいいのですが。誰かがこれを行う方法を知っていますか? 私は残りを処理することができました。現時点では、それが FAT12/16/32 になるかどうかはあまり心配していません。オプションで MBR を含めるとよいでしょう。

そのオプションが存在しない場合は、事前に作成されたユーティリティを使用して、プロジェクトに含めて RAM に直接アップロードできる FAT img ファイルを作成しようとしています。このユーティリティを使用すると、たとえば 512 バイトのセクターを持つ 8MB のファイルシステムを指定でき、場合によっては FAT12 / FAT16 / FAT32 も指定できます。

誰もそのようなユーティリティを知っていますか? 見つけられませんでした。

そうでない場合、誰かがこれを C で実装するための最初のステップを推奨できますか? ライブラリが存在することを願っています。大容量記憶装置ドライバーをゼロから実装したのでかなり疲れましたが、「しわが寄って」手動で FAT パーティションを作成する必要があるかもしれないことは理解しています。それほど難しくありません。いくつかのパックされた構造体といくつかのオプションを想像します。私はそこに着きます。私はすでに FAT ファイルシステム自体にリソースを持っています。