USBポートのみでプログラムがリードしました
-
30-09-2019 - |
質問
USBポートのみを使用して、C#でLEDを制御したいと思います。 USBに他のデバイスを添付したくありません。 LEDを直接USBポートピンに直接取り付けてプログラムしたい(Blinkなど)。どうやってやるの?私はハードウェアプログラミングを初めて使用しており、それが私の最初のプログラムになります。
編集:私はすでにそれを行うことができます(BlinkLED) printer port
1つのLEDピンをに取り付けます data pin
その他 ground
. 。 USBポートで同じことをするにはどうすればよいですか?マザーボードにはプリンターポートがありません。 USBが唯一のオプションです。
解決
これは不可能です。
4 usb pins
| | | |
| | | |
1 2 3 4
1: +5V
2: D-
3: D+
4: Ground
To trun on LED connect with 1 and 4
データピンの電流が低すぎるため、接続してもLEDは決してオンになりません 5V
および任意のデータピン。したがって、LEDはUSBポートのデータピンを使用して直接制御できません
他のヒント
多くのメインボードは、USBポートに電流を永久に供給します。
理論的には、USBコントローラーをいくつかのサスペンドモードに入れて再度戻すことができますが、これは悪いことです。
USBを介したコマンドを受け入れるには、何らかのコントローラーが必要であり、永続的なUSB電源から電流を開閉してLEDに到達させるための個別の要素が必要です。
あなたは本当にこれを行うことができません。データピンを個別に制御できるため、並列ポートでそれを行うことができます。 USBを使用すると、USBプロトコルの上に乗るデータのみを制御できます。とにかくマザーボードのチップによってプロトコルがファームウェアで実行されている可能性が高いため、パワーピンを横切ってLEDを接続してUSBバスの電源を切り替えることができないことをする方法はない可能性が高いです。さまざまな理由で行います。
Arduinoか何かを手に入れてください。長期的には、はるかに簡単になり、より柔軟になります。
プリンターポートを使用して、すでに(Blink LED)ができます...
わかりました、だから購入してみませんか 安価なUSBベースのプリンターポート そしてそれを使っていますか?すでにLPTポートコードが機能しているため、これにより透明なソリューションが得られます。
PICマイクロコントローラーを使用できます。 18Fシリーズは、USBを介してLEDを直接インターフェースできます。 C#を使用してコードし、USBポートのみを使用してLEDを制御することもできます。私はあなたが実際にLEDをコントロールしたいと思っており、単にそれを輝かせるだけではありません。
USBを使用してLEDを制御する動機をクリアできれば、Qに答えることは非常に役立ちます。