3

私は自分のコンピューターからUSB経由で回路に簡単な信号を送ることを含む個人的なプロジェクトに取り組んでいます。基本的に、私はUSB信号をMOSFETのゲート信号として使用しています。MOSFETはリレーをアクティブにして、さまざまなAC周辺機器をオン/オフします。たとえば、毎分5秒間電球をオンにしたい場合、毎分の最初の5秒間、最初のワイヤに1を送信します。

これが私の問題です。USBケーブルの特定のワイヤに0/1を手動で送信する方法、またはUSBポートと対話する方法がまったくわかりません:(

したがって、この質問には複数の部分があると思いますが、USBポートを介して送信されるビットと直接対話することは可能ですか?もしそうなら、私はこれをどのように行いますか?私はC++とC#に精通しているので、それらの1つでそれを実行できることを本当に望んでいます...

ありがとう!

うーん、USBポートには実際には5Vピンが1つしかないように見えるように編集して、直接USBインタラクションが機能しないようにします。パラレルアダプタを見て、それに戻ります。

4

6 に答える 6

3

USBは、ワイヤの反対側にUSBインターフェイスがないものには適していません。独自のUSBデバイスの構築に取り掛からない場合は、2つの直接制御可能な出力ライン(フロー制御ライン)を提供するUSB​​-シリアルアダプター、またはUSB-パラレルアダプターを購入することをお勧めします。 8行以上になります。

Chris Johnsonの回答には、Windowsシリアルポートプログラミングの手順へのリンクがあります。セクション7を確認する必要SETDTRがあります。 CLRDTR、、、、SETRTSおよびCLRRTSはフロー制御ラインのトグルです(それぞれDTRラインとRTSラインの場合)。

ハードウェアに関する限り、フロー制御ラインの「1」(SET)値は、ライン上で+ 3〜 + 15ボルトであり、「0」は-3〜-15です。実際の電圧はデバイス間で異なる場合があります。確実に測定してください。(編集済み。1と0が混同されました。制御ラインはデータラインとは逆の規則を使用します。)

電圧特性ピン配置については、ウィキペディアのページをご覧ください。

編集: USB-パラレルアダプタについてさらに調査を行った結果、必要なレベルの制御が得られるとは思いません。最良の結果を得るには、PCIまたはPCMCIAパラレルカード、またはマザーボードに組み込まれたパラレルポートが必要です。

私はWindowsプログラマーではありませんが、このライブラリはWindowsからパラレルポートの回線を制御するのに役立つかもしれません。

于 2010-10-03T09:17:09.110 に答える
3

このアプリケーションで行う最も簡単な方法は、ハードウェアデバイスでUSB-シリアルケーブルまたはUSB-シリアルコンバータチップ(FTDI FT232など)を使用してシリアルポートエミュレーションを使用することです。

いずれにせよ、これにより、シリアルポートと同じようにUSBデバイスを操作できます(たとえば、WindowsのC ++でこれを行う方法についてはこちらを参照してください)。

于 2010-10-03T09:23:08.243 に答える
3

クリスが提案したように、FTDIからUSBスレーブデバイスを入手できます。 digikeyで27ドルを購入すると、細かい配線がすべて完了した小さなボードが手に入ります。

ただし、目的には、データシートの39ページに記載されているビットバンギングモードの方がUARTモードよりもはるかに優れています(UARTは数キロヘルツでパルスを生成するため、電圧を設定したレベルに維持する必要があります)。

FTDIは高出力で約3.1〜3.2Vを出力するため、MOSFETが3V信号でオンになることを願っています。

また、FTDIの最新のドライバーを使用するようにしてください...数年前には、頻繁にBSODを引き起こすドライバー(WHQL認定も受けています)があり、ハードウェアに付属のドライバーCDは数年前のものであることがよくあります日にち。

于 2010-10-04T04:50:58.943 に答える
1

私はあなたがしていることと非常によく似たものを作りました(私はusbデバイスから車の窓のモーターを動かし、モーターを駆動するためにmossfet Hブリッジ(図のHDR1X8)を使用しました)。USB to I / Oデバイスが必要です。これは私が使用したものです(U421を入手しました。ブレッドボードの中心線に完全にフィットし、分割されていない場合は401もブレッドボードでうまく機能します。

http://img201.imageshack.us/img201/9316/u421.png

彼らはあなたにdllを与え、あなたはあなたのコードでそれにリンクするだけです。これは、MOSFETデバイスに書き出すためにWriteAとWriteBを呼び出すのと同じくらい簡単です。ロジックレベルラインは電流を駆動するためのものではないため、中規模から大規模の電流が流れると予想される場合は、これをトランジスタに接続する必要があることに注意してください。それを接続する適切な方法を確認するには、usbmicroサイトのメニューのアプリケーションノートのApp1を参照してください。

于 2010-10-04T04:04:42.330 に答える
0

USBプロトタイプボードを使用してください。通常、ソフトウェアSDKが付属しています。

于 2010-10-03T09:45:00.310 に答える
0

私のウェブサイトからこれらのリンクをチェックしてください:1.あなたはusbからシリアルへのコンバーターを使うことができます。あなたが知る必要があるのはここにあります 2.プログラミングを使用してUSBに直接アクセスできますが、これにはデバイス用のドライバーがすでにインストールされている必要があります。詳細はこちら

于 2013-09-07T12:44:23.460 に答える