2016-12-07 27 views
0

私はpySerialをボーレート50万でFTDIのリードでマイクロコントローラと通信しようとしています。私は自分のマイクロコントローラを知っていて、FTDIの鉛は私のラップトップそのものと同じように扱うことができます。私はそのボーレートでパテ端末に送ることができます。しかし、同じPythonコードでは低いボーレートで動作しますが、pySerialスクリプトでpySerialスクリプトを送信しようとすると何も表示されません。PySerial - プラットフォーム(ウィンドウ)の最大ボーレート

pySerialドキュメントは言う:

「パラメータのボーレートは、標準値のいずれかであり得る:50、75、110、134、150、200、300、600、1200、1800、2400、4800、9600 、19200、38400、57600、115200などのプラットフォームでサポートされています。これらはすべてのプラットフォームでサポートされています。

230400,460800,500000,576000,921600,1000000、1152000、1500000、2000000、2500000、3000000などの標準値、3500000、4000000も多くのプラットフォームやデバイスで動作します。

私はシステムがそれをサポートしていないために動作していないと仮定していますが、システムがサポートしている値を確認するにはどうすればいいですか?残念ながら、250,000以上を送信し、250,000や500000のような素敵なラウンド番号で送信する必要があります(マイクロコントローラのクロックエラーと関係があります)。

ご協力いただきありがとうございます。

答えて

0

私は、丸められた数字が動作しない、すなわち100000,200000,250000であることを発見しましたが、115200の倍数はそうです。 230400、460800

最初に230400を使用しようとしましたが、私のマイクロコントローラが生成できるボーレートは235294または222222です。235294は-2.1%の誤差と222222の誤差をもたらし、3.55%の誤差をもたらします。私は自然に低誤差のものを選びましたが、それはうまくいかず、222222を試しても気にしませんでした。何らかの理由で222222が235294のときに動作します。だから私は実際に私が最初に持っていなければならないと思った250000のボーレートを使用する必要はありません。

私はパセティがそうしているときに、いつもpyserialがそれらのボーレートで動作しないのか分からないので、私のラップトップは物理的にそれを行うことができます。とにかく、標準的なボーレートを試すことはもちろん、上と下の両方の周波数を試すために必要な正確なボーレートを生成できないマイクロコントローラを使用する場合も、

関連する問題