COMポートのDTR制御について

[戻る]
はつし 2002/05/27(月) 20:00:43
WIN98で、VC++6.0で開発しています。

CreateFileにてCOMポートでRS-232C通信を行っています。
ここで、RTS信号とDTR信号をSetCommStateで制御しているのですが、
私としては、RS/CSとDR/ERの状態に関わらずRS232C通信を行いたいのです。
(どうも、DRやER信号の状態によってデータの送信ができないようです。)

私としては、RS/CSとDR/ER信号をRS232Cの通信機能とは独立して使いたいのです。
(つまり、RS232C通信をしながら、RS/CSとDR/ER信号を別の目的で使いたいのです。)


いろいろと試したのですが、DR/ERの状態によって通信ができたりできなかったり
するようです。
これを回避するにはどのようにすれば良いのでしょうか?

よろしくお願い致します。

Bun 2002/05/28(火) 08:06:49
DCB.fDtrControl メンバのしわざかも?

DCB構造体について調べてみてください。

はつし 2002/06/07(金) 14:11:04
コメントありがとうございます。

DCBをいろいろといじってみたのですが、やはり
うまくいかないようです。

原因が、他にあるかもしれないので、もう少し
調べてみることにします。

yoyo君 2002/06/20(木) 15:53:05
ただ単純にDTRとRTSを両方ともショートしちゃえば普通に通信できますよ。
ハード的にいじればの話ですけど。
ショートしちゃえば要求信号がそのままOKで帰ってくるってことですけど。

Bun 2002/06/20(木) 16:37:56
>ただ単純にDTRとRTSを両方ともショートしちゃえば普通に通信できますよ。

DTRとRTSはともに出力信号なので、この端子どうしをつないではいけません。

よくやるのは RTS と CTS をつなぎます。

ヒー 2002/06/25(火) 11:44:28
EscapeCommFunction辺りでは?
あら?違ったかな??
でもこれでDTRは制御できますが・・・。

古いスレッドには追加発言できません。