2017-12-24 30 views
-1

Ubuntu 16.04 & MATLAB R2017a。私はそのようなシリアルポートを設定しようとしているMATLABの最大ボーレートはどれくらいですか?

:それは正常に動作しますが、私はボーレートを変更しようとすると、私はこのメッセージまし1000000 を言っています

s=serial_port('/dev/ttyUSB0','BaudRate',115200,'DataBits',8,'InputBufferSize',80000) 

Open failed: BaudRate could not be set to the specified value. 

したがって、私は2つの質問があります:

1)一般的なボーレート、例えば2000000を設定することは可能ですか?

2)1500000と3000000が私のために働いています。 最大速度はありますか?

** UPDATE **

私は私の場合には、OSでボーレートを変更する方法を知っている

(Ubuntuの16.04) setserialのが動作していないので、私はsudo stty -F /dev/ttyUSB3 3500000を使用しています(すべての速度が許可されていません)またはasm/termios.h>を介して - すべての速度が許可されます。 したがって、私は第2の方法を使用しています。 (上記のエラー)

+1

ご質問は、ドキュメント(https://www.mathworks.com/help/matlab/matlab_external/baudrate.html)で回答しています。サポートされているボーレートを含む、シリアルポートに関するプラットフォーム固有の情報を取得する方法についての説明があります。 –

+0

もちろん、私はそれを読んだ。アップデート –

答えて

1

..

はその後、私は簡単にそのcu -l /dev/ttyUSB0 などのポートを聞くことができると同時に、私はMathWorks社のMATLABで速度を設定傾けるthis linkはあなたに管理する方法について十分な情報を提供すべきであるが、 @Cris Luengoがすでに彼のコマンドで述べたように、Matlab側のボーレートは、ハードウェア側で少し詳しく説明したいと思います。

次のコマンドを使用して:あなたはターゲット・デバイスの現在のボーレートを取得することができるはず

stty -F /dev/ttyUSB0 

を。その他の重要な情報と一緒に

setserial -ag /dev/ttyUSB0 

は/ dev/ttyUSB0、ライン...、UART:...、ポート:別の方法として、次のコマンドは、その値を取得します... 、IRQ:...

Baud_base:...、close_delay:...、除数:...

closing_wait:...、closing_wait2:...

フラグ:...

OS側では、あなたには、いくつかのデバイスのボーレートで遊ぶことができますが、あなたが問題を回避したい場合、あなたは常に接続を確立する際にコヒーレント値を設定する必要があります。一般的に言えば、デバイスは、ボーレート偏差に関する過速度とアンダースピードの許容レベル(±5%以内)を持っています...したがって、現在のボーレートとは異なる任意のボーレートを強制することはできますが、それからあまりにも遠くに行きたくはありません。

+1

を見てくださいありがとう、これは私が書くのが面倒だった答えです! ;) –

+0

更新を見てください –

関連する問題