シリアル通信の通信速度について、教えてください。
通信速度については、DCB構造体に設定すると思うのですが、
BaudRate に指定できるのは、CBR_110~CBR_256000となっています。
今回、通信先からは 68bps での応答を要求されているのですが、
この場合、BaudRate にはどうやって指定したらいいのでしょうか。
一番近いのは CBR_110(110bpsってことですよね?)ですが、
68bps よりも早い…、
これだとデータが抜けそうな気がします。
どうしたら 68bps でやってくるデータをちゃんと取得できるでしょうか。
環境:VS2005 C++ MFC
DCB の BaudRate の説明をきっちり読んだ?
次で示すインデックス値か、または実際のボーレートの値と書いてあるよな
というわけで DCB.BaudRate に直接 68 を指定することは可能だ。
直接 68 と書いて味噌。
その値に対して OS 側ドライバーが正しく動くか、ハードウェアが正しく動くかは
また別問題なわけだけど。
tetrapodさんの意見に補足です。
> その値に対して OS 側ドライバーが正しく動くか、ハードウェアが正しく動くかは
> また別問題なわけだけど。
勇さん
ここ大事です。
普通110bpsからみたいですね。
68bpsはかなり特殊ですね。
「SetCommState」で設定エラ-になる可能性大きいですね。
エラーにならなくてもうまく通信できるかどうか分かりません。
考えられる選択肢は、市販のRS-232Cボードを探すことぐらいだと思います。
でも、68Bpsはあるかどうかわかりません。
tetrapod さん、ありがとうございます。
直接数値を指定できるのでしたか。
すみません、MSDNで英文が出てきた瞬間、文字列をちゃんと読むのを
放棄してました。
68、と入れてやってみます。
ITO さん、ありがとうございます。
記事を見つけるのが遅くなってすみません。
そうなんです、68bpsってみたことなくて、
ホントに通信できるのかな?と思ってました。
そうしたら、実は68Kbpsだったことが昨日判明しました…。
直接 68000 と設定してやってみます。