シリアル通信の通信速度が遅い時 – プログラミング – Home

シリアル通信の通信速度が遅い時
 
通知
すべてクリア

[解決済] シリアル通信の通信速度が遅い時


勇
 勇
(@勇)
ゲスト
結合: 17年前
投稿: 5
Topic starter  

シリアル通信の通信速度について、教えてください。

通信速度については、DCB構造体に設定すると思うのですが、
BaudRate に指定できるのは、CBR_110~CBR_256000となっています。

今回、通信先からは 68bps での応答を要求されているのですが、
この場合、BaudRate にはどうやって指定したらいいのでしょうか。

一番近いのは CBR_110(110bpsってことですよね?)ですが、
68bps よりも早い…、
これだとデータが抜けそうな気がします。

どうしたら 68bps でやってくるデータをちゃんと取得できるでしょうか。

環境:VS2005 C++ MFC


引用未解決
トピックタグ
tetrapod
 tetrapod
(@tetrapod)
ゲスト
結合: 21年前
投稿: 830
 

DCB の BaudRate の説明をきっちり読んだ?
次で示すインデックス値か、または実際のボーレートの値と書いてあるよな

というわけで DCB.BaudRate に直接 68 を指定することは可能だ。
直接 68 と書いて味噌。

その値に対して OS 側ドライバーが正しく動くか、ハードウェアが正しく動くかは
また別問題なわけだけど。


返信引用
ITO
 ITO
(@ITO)
ゲスト
結合: 22年前
投稿: 1235
 

tetrapodさんの意見に補足です。

> その値に対して OS 側ドライバーが正しく動くか、ハードウェアが正しく動くかは
> また別問題なわけだけど。
勇さん
ここ大事です。
普通110bpsからみたいですね。
68bpsはかなり特殊ですね。
「SetCommState」で設定エラ-になる可能性大きいですね。
エラーにならなくてもうまく通信できるかどうか分かりません。

考えられる選択肢は、市販のRS-232Cボードを探すことぐらいだと思います。
でも、68Bpsはあるかどうかわかりません。


返信引用
勇
 勇
(@勇)
ゲスト
結合: 17年前
投稿: 5
Topic starter  

tetrapod さん、ありがとうございます。

直接数値を指定できるのでしたか。
すみません、MSDNで英文が出てきた瞬間、文字列をちゃんと読むのを
放棄してました。

68、と入れてやってみます。


返信引用
勇
 勇
(@勇)
ゲスト
結合: 17年前
投稿: 5
Topic starter  

ITO さん、ありがとうございます。
記事を見つけるのが遅くなってすみません。

そうなんです、68bpsってみたことなくて、
ホントに通信できるのかな?と思ってました。

そうしたら、実は68Kbpsだったことが昨日判明しました…。
直接 68000 と設定してやってみます。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました