Armadilloフォーラム

CTS・RTS制御でシリアル通信時のCTSのON/OFFの確認方法

nemo

2022年2月15日 17時38分

根本です。何時もお世話になっております。

Armadillo640を使いシリアル通信(CTS/RTS制御あり)の器機に接続して
制御をしたいと思っております。

現在C言語でプログラムを書き実験で通信をしているのですが。
CTSがONでないのにwrite関数が正常に通ってしまい。
数秒後にCTSをONにするとシリアルからデータが出る様です。

write関数コール前にCTSがONかOFFか確認してからwrite関数をコールしたいのですが。

色々調べたのですが良い情報が見つからずここに問い合わせをしました。
宜しくお願い致します。

コメント

y.nakamura

2022年2月16日 14時53分

中村です。

> Armadillo640を使いシリアル通信(CTS/RTS制御あり)の器機に接続して
> 制御をしたいと思っております。
...
> write関数コール前にCTSがONかOFFか確認してからwrite関数をコールしたいのですが。
> 色々調べたのですが良い情報が見つからずここに問い合わせをしました。

ioctlのTIOCMGETでCTSの状態を取得できると思います。
640では試していませんが、他のArmadillo数機種で使ったことがあります。

--
なかむら