質問

最近、Arduinoの Hello World アプリケーションについて読んでいたところ、 <!> quot;今持っているハードウェアでそれができるのかな?<!> quot;

私はArduinoを持っていないので、置いていたUSBフラッシュドライブをつかみ、それについての情報を求めてグーグルで回り始めました。私はこの分野であまり有益な情報を見つけられなかったので、今ここで尋ねています:USBドライブのハードウェア(LEDなど)にアクセスし、プログラミング環境を介して対話することは可能ですか(C#はおそらくこれを行う方法がありますか?)

また、この主題に関連して-USBドライブが使用するコマンドの種類を誰もが知っていますか?たとえば、SCSIストレージデバイスには標準化されたコマンドセットがあります。 ATAデバイスにも同様のプロトコルがあります。 USBストレージデバイスに発行される単純な読み取り/書き込みコマンドはどうですか?

役に立ちましたか?

解決

USBプロトコルはかなり一般的ですが、周辺機器は実際に機能固有であり、適切に機能するためにホスト上の何らかの種類のデバイスドライバーが必要です。

USBフラッシュドライブにはマイクロコントローラーが搭載されていますが、ほとんどのUSBストレージデバイスは一般的なプロトコルに従います。そのため、Windowsに接続するドライブごとに異なるデバイスドライバーをインストールする必要はありません。

マスストレージプロトコルには<!> quot; LEDをオンにする<!> quot;メッセージ:) そして、USBドライブを実装した会社は実際にそれを行うための特別なコマンドを持っているかもしれませんが(おそらくデバッグのために)、私はそれが公開されることを疑います。

私はWindowsの第一人者ではありませんが、USBスタックに直接アクセスするには、独自のデバイスドライバーを作成し、カーネルにプラグロードする必要があると思います。通常のアプリケーションが<!> quot; format everything <!> quot;を送信できるかどうか想像できますか?任意のUSBデバイスへのコマンド。

他のヒント

ここに、DIY USB制御LEDランプへのリンクがあります。小さな USBスティックを差し込んでからさらに作業します。

USBハードドライブのライトをオンにする場合は、そのドライブ上のファイルにデータを書き込む必要がありますが、一部のドライブでは常にライトが点灯していると思いますが、ほとんどは点灯しているだけですデータが書き込まれている間。

したがって、USBドライブがF:としてマウントされている場合は、F:\ lights.txtのようなファイルを作成し、そこに数kのデータを書き込むだけで、ファイルを消去してやり直すことができます。

1つの欠点は、フラッシュドライブがしばらくすると摩耗することです。また、ドライブからデータを読み取ることもできます。

より正確な制御が必要な場合は、これら<のようなUSBデータ取得デバイスを取得できます特定の電気出力を駆動して、電球やLEDなど、必要なものに電力を供給します。彼らはもともと科学者が実験装置からの入力を測定するために使用していましたが、当時はRS-232を使用していましたが、大学の物理学クラスでそのようなものを使用しました。

こちらを探します。彼らは大容量記憶装置と呼ばれるものを使用します。

LinuxのUSBドライブはSCSIドライブのように見えるため、INQUIRY、READ、WRITEなどを実行できます。通常、フラッシュドライブのコントローラーの製造元には、ベンダー固有の<!> quot; backdoor、<!> quot;一般には知られていません。

RS232ポートのようにUSBを制御できます。このMSDNリンクがさらに役立つことを願っています http:// www.microsoft.com/downloads/details.aspx?FamilyID=075318ca-e4f1-4846-912c-b4ed37a1578b&DisplayLang=en

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top