2

私は FT245RL チップをベースにした SainSmart USB リレーボードを手に入れようとしていますが、ひどい時間を過ごしています。次のようなコマンドラインからリレーを制御できるという印象を受けました。

echo -e -n "\xFF\x1\x1" > /dev/ttyUSB1

デバイスが自動的にマウントされ、ボー レートとアクセス許可が設定されていると思いますが、Debian スクイーズまたは CentOS 5 マシンでは何も起こりません。サインスマートのサポートは無価値です。

Windows で試すことにしたので、ドライバーをインストールし、Python で小さなプログラムを作成しました。

import serial
ser = serial.Serial(2) #COM3
ser.write(chr(255) + chr(0) + chr(1))
ser.close

まだ何もありません。おそらくハードウェアの問題なので、提供されている Windows プログラムをインストールします。リレーボタンをクリックすると、デバイスが認識され、機能します。がっかりして、私は彼らのプログラムを終了し、私のバグを探します(何も見つかりません)が、とにかく試してみるとうまくいきます!あらゆる種類のクールなことを実行するためのはるかに大きなプログラムを作成し、デバイスのプラグを抜くまでクールなことが起こります。再び差し込むと、何も機能しません。コードが何かを行う前に、リレー制御プログラムを実行して終了する必要があります。

FT_SetBitMode() のような d2xx ドライバーで何かをしなければならないと思います。VCP モードだけを使用する方法はありますか? PyUSB がコンピューターにインストールされず、Linux で使用できません。

私が欲しいのは、Python を使用して Linux でリレーを制御する簡単な方法だけです。

4

4 に答える 4

1

まずは試してみることをお勧めしますhyperterminal

コード スニペットから、ボーレートが不足しているようです (残りがデフォルト値になると仮定します)。そして、それが問題かどうかはよくわかりませんが、私は常に明示的にポートを として設定しますSerial('COM3')。これにより、可能性のある障害点が1つ少なくなります:)

于 2013-04-23T20:25:14.350 に答える
0

おそらく、Python には問題はありませんが、デバイス自体の制御には問題があります。

デバイスに制御ラインの状態 (DST、DTR など) に関する特別な要件があるかどうかを確認する必要があります。

そして忘れてはいけないのが、アレックスが言っていた通信速度。

于 2013-04-23T20:30:19.690 に答える