0

USB ケーブルをコンピューターに接続しました。D+ ピンと D- ピンはマルチメーターに接続されています。電圧を取得するために生のバイトを送信したいのですが、それは可能ですか?

ケーブルを差し込んだUSBポートが/ dev/bus/usb/002のようなものであることは99%確信しています

LPT または RS232 ポートでも同じことができる可能性があることは知っています。

4

3 に答える 3

2

RS232 と LPT はバスではありません。USB デバイスにアクセスできるようにするには、アドレスを指定する必要があります。

USBホストを駆動するUSB​​ドライバーをアンロードして再ロードしている可能性があります...またはUSBハブホストでリセットを試みています...

USBポートでこの種の操作を行うには、USBカーネルドライバーを壊し、すべてのアドレス指定操作をチップセットに直接アドレス指定する必要があります...

まったく、USB の概念により、コンセントの電源状態を正常に保持できるかどうかはわかりません。

その種の物理 IO で遊ぶには、2 つの解決策があります。

低コストの RS-232 <-> USB アダプタを取り付ける

またはそれ以上

プロトタイピングと開発用にArduinoマイクロコントローラーを購入してください。

于 2012-12-28T17:18:54.073 に答える
1

USB は、データ ラインにプルアップ/プルダウン抵抗を使用して、ポートが接続されているかどうかを検出します (デバイス側では 1.5k プルアップで 3.3v、ホスト側 IIRC では 15k プルダウン)。正確な接続は、デバイスの速度によって異なります。

したがって、適切な抵抗を接続すると、ホストはシグナリングを開始しようとする必要があります。データレートが原因で、マルチメーターでそれを確認できない場合があります。オシロスコープの方が適切です。

通常の USB プロトコルをバイパスしてやみくもにデータを送信したい場合は、手を汚して、通常のデバイス ドライバーをバイパスして USB ハードウェアに直接アクセスするコードを記述する必要があると思います。それでも、何が可能かはわかりません.USBハードウェアは、この種の低レベルの処理を妨げる可能性のある古き良きLPTおよびRS232ポートよりもはるかにスマートです.

于 2012-12-28T22:59:37.550 に答える
1

相手側に実際にデバイスがない限り、USB リードに何も送信できないことはほぼ 100% 確信しています。それでもこれで遊びたい場合は、安価なメモリー スティックを入手し、[大まかにではなく] ケースを壊し、メモリー スティックに大きなファイルを転送しながら測定するなどしてください。

しかし、USBレートと比較して少し遅い傾向があるため、マルチメーターが多くのことを示すかどうかはわかりません.

于 2012-12-28T17:01:26.417 に答える