0

イーサネット経由で USB データを送信するハードウェアがあります (パッケージに保存されているデータのみが送信されます)。リモート PC では、データはイーサネット経由で受信されます。このデータを USB ドライバーに送信して、データをアプリケーションが使用できるコマンドに変換するにはどうすればよいですか?

4

4 に答える 4

1

ソフトウェアドライバー自体をハッキングしようとするよりも、逆のことを行い、IP ベースの USB 情報を USB サブシステムに送信するハードウェアを入手する方がよいでしょう。ハードウェア ベンダーがこれを行うデバイスを持っていないとは思えません。

于 2009-10-05T14:08:11.133 に答える
0

接続しようとしているポート/ソケットをリッスンするサーバーが必要です。 Twisted Matrixは、ネットワーク通信用の適切なPythonライブラリを作成します。

于 2009-10-01T12:48:42.027 に答える
0

Windowsでも実行可能ですが、それを機能させるには多くのカーネル/ usbの知識が必要です.このタスクを数人年と見積もっても間違っているとは思いません.サポートするデバイス/デバイスの種類の選択.
ホスト コントローラー ドライバーをネイティブ USB ホストにシミュレートするバス ドライバーを開発する必要があります. 残念ながら、このインターフェイスは公開されておらず、MS の協力を得ることはできませんでした
.コントローラー レベルではなく、ハブ レベルで動作する追加オプションです。このインターフェイスは利用可能ですが、それに関するメモを見つけることができませんでした。評価版
を ダウンロードして、ドライバー スタックを調査すると、どこにアクセスするかの手がかりが得られる可能性があります。始める。

于 2009-10-05T13:59:49.487 に答える
0

これは面倒なことになると思います。

USB は通常、バス トラバーサル中に検出されたデバイスのさまざまな ID 番号に基づいて、接続されたデバイスにドライバーを関連付けるように設定されます。

データはイーサネット経由で受信されるため、プラットフォームの USB ドライバー スタックは問題のデバイスについて何も知りません。これは、どうにかして適切なドライバーと直接対話する必要があり、(その観点から) 接続されていないデバイスからのイベントを処理できるように準備する必要があることを意味します。

よく設計された USB スタックでさえ、これを満足に処理できない理由はいくつか考えられます。

Linux では、実際のドライバーが使用するのと同じ API を使用して、自分でデータを解釈して送信することで「ごまかす」ことができる場合があります。もちろん、それはどのUSBデバイスでも機能しません。デバイスが何であるかを知る必要があります。

于 2009-10-01T12:54:21.167 に答える