RTSまたはCTS回線のステータスが変更されたときにRS232通信で何かに関する情報を誰とでも共有できますか? RS232通信では、まったく同じことが起こりますか?RS232ハンドシェイク - 詳細はどうなりますか?
私は、QtのQextSerialPortライブラリ経由でシリアルポートに接続するPCがAtmel AVRマイクロコントローラと通信するアプリケーションに取り組んでいます。マイクロコントローラは、内部割り込みをディスエーブルにするために一時的にUARTポートをシャットダウンする必要がある(ADCをチェックし、正確な時間間隔などを守る)必要があります。私はRTS/CTSハンドシェイクを使用していますので、AVRはRTSラインをハイにしてポートを閉じようとしているときにPCに信号を送り、RTSを再びローにしてポートの再開を知らせます。
これは基本的にうまく機能しますが、どちらかの方向に送信されている途中でバイトがある間にRTSが高く設定されている場合、何が起きるのかはっきりしていません。 AVR側では、私は非常に低いレベルで制御することができますが、PC側ではQextSerialPortをハードウェアフロー制御モードにするだけで、基本的なWindows機能が何をしてもそれを実行します。私は、ここでの行動の不一致が、私が送信中に起こる時折起こる不具合の説明であるかどうか疑問に思います。
明るくて、ありがとうございます。私は、USARTがCTSの立ち上げ時に働いていたことを知らなかった。私はそれがトラックで(または現在のバイトを送信した後で)ほとんど停止したと仮定していた。これは私が時折見られるいくつかの他の奇妙な影響を説明するかもしれませんが、おそらく私が現在取り組んでいるものではありません。 –