USBの入力を確認するにはどうすればよいですか?


8

以下に示すように次のワイヤを使用しています。一方の端にはオスのUSBコネクタがあり、もう一方の端には4つのワイヤがあります。私は、ラップトップに接続されているとき、赤いものが電圧源として機能し、黒いものがグランドとして機能することを知っています。2ビットのデータ入力を緑と黄色に入力した場合、これらの2つのワイヤの状態を知るためのソフトウェアまたはAPI(Python、Cまたはその他の言語)はありますか?緑か黄色に電圧があるかどうかを確認します。

ここに画像の説明を入力してください

間違った質問をする場合は、私を案内してください。

回答:


12

いいえ、USBワイヤの状態を直接検知することはできません。USBはそれよりもはるかに複雑なインターフェースであり、シンプルなドライバープログラムで直接I / Oに使用できる古いスタイルのシリアルポートやパラレルポートとは比較になりません。「実際の」データ/ペイロードの最初のバイトが送信される前であっても、複雑なハンドシェイクがPCと交換されます。

多分あなたのPCは使用できるパラレルポートを持っていますか?または、さまざまな価格(非常に高いものと非常に低いものの両方)で幅広く入手できるUSBからGPIOへのコンバーターを使用する必要があります。


1
例:sparkfun.com/products/718私はこのモジュールの経験はありませんが、仕事のようです。あなたが少し見回すならば、利用できる多くの同様の選択肢があります。
ジッピー2013年

1
ほんの少しの追加:ハンドシェイクは通常のプログラミング言語でアクセスできるレベルよりもはるかに低いレベルで発生するため、このようなUSBポートを悪用することはできません。ハンドシェイクの一部はハードウェアで発生します。
Alexander

1

あなたの最終的な目標は何ですか?USBプロトコルを監視する場合は、比較的安価または比較的高価なロジックアナライザーを使用できます。

コンピューターでバイトをキャプチャすることが目的の場合は、オペレーティングシステム用のUSBデバッガーを入手できます(たとえば、OS Xには無料のUSBデバッグキットがあります)。

入力に電圧をかけるかどうかを判断する簡単な方法を目標とする場合は、USB-> GPIOを使用する方がよいでしょう(ジッピーが示唆)、または(より高価な)arduinoルートを下ることができますコンピューターで分析する前に、入力をさらに処理したい場合は、大きくする余地があります。

新しいハードウェアを購入せずに電圧値をコンピューターに取り込む非常に簡単な方法が本当に必要な場合は、パラレルポートを使用するというジッピーの提案が適切です。マイク入力をジェリービルドのソリューションとして使用することも検討できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.