
こんばんは。
症状に改善が見られないため、皆さんの助言を頂きたいと思い、ここで質問させて頂きます。
現在、LINUXOSでUSB接続シリアル変換ケーブルを使用した通信のチェックをしております。
チェック方法はwindowsの別PCと繋ぎ、jermやminicomを使用して通信をしています。
ですが、データの受信はできるのですが、送信が全然できません。
環境は
OS:Redhat Linux8.0
カーネル:2.4.18-14
ケーブル:BHC-US01/GP(BUFFALO)
です。
カーネルモジュールの設定で
<M> USB Prolific 2303 Single Port Serial Driver
を確認してます。
また、デュアルブートでWindowsを使用した場合は送受信共に可能なので、ハードには問題ないと思います。
他に何をチェックしたらいいでしょうか?
No.3ベストアンサー
- 回答日時:
PL2303は僕も使っていますが、、
僕の場合は、同じように,同じUSBシリアルとWindowsにつなぐと正常だけどLinuxにつなぐと送信できないという症状になりました。調べてみると、接続した機器側がGND/RxD/TxDの3本しか線がつながってなくて他の制御線が全部オープンでした。対策として、USBシリアルアダプタ側でRTSをCTSにループバックしました。
LinuxのPL2303ドライバはハードウェアフローコントロールをOFFにしても、CTSはみます(というか、それが本来のRS232Cの動作。ハードウェアフローコントロールがCTSをフローコントロールに転用しているだけ)。
回答ありがとうございます。
ドライバのバージョンが古かったのが原因だったようで、PL2303を更新したところ送信も可能になりました。
初めに確認すべき点でした。。。
お手数をかけてしまい、申し訳ないです。
しかし、そのおかげで少し詳しくなれました。
とても分かりやすい説明をありがとうございます。
とてもためになりました。
今回は通信チェックだけだったのですが、GND、TxDの2本だけをボードに接続し、通信を行うのが最終的な目的です。
ケーブル作成用の資料もWindows用に作ってあるため、CSTはオープンにするよう書いてありました。
そのケーブル作成の際にRTSをCTSにループバックさせようと思います。
どうもありがとうございました。
No.2
- 回答日時:
使っているクロスケーブルの問題ではないでしょうか。
LinuxはCTS信号をまじめにチェックしています。CTSがOFFだと送信しません。
回答ありがとうございます。
これはハードウェアフロー制御を行う、という意味でいいんでしょうか?
Windows同士では、ハードウェアフロー制御で送受信可能なので、クロスケーブルに問題はなさそうです。
Linux-Windows間になると、ハードウェアフロー制御をすると、Windows側から送信する際にWindowsPCが数秒フリーズしてしまいました。
Linuxからの送信も、やはり出来ていないです。
jerm、miniicom共に同じ症状だったので、ドライバあたりの問題のような気がします。
とりあえずは、No.1のお礼に書いたようにコントローラの組み合わせをいじってみようと思います。
ありがとうございました。
No.1
- 回答日時:
これではだめですか?
組み合わせるUSBコントローラが一定でないのでこういうのは「やってみてわかる」状態ですけど。
回答ありがとうございます。
USB-SERIAL変換機の部分ですよね?
簡潔に書かれているので、きちんとなっているかは分かりませんが、カーネルモジュールの設定は参考のページの通りにしてみました。
ですが、いまだに送信はできない状態です。
>組み合わせるUSBコントローラが一定でない・・・
とは組み合わせるUSBコントローラを変えてみたら動くかもしれないということでしょうか?
今はデフォルトの状態で、ほとんどのコントローラが有効になってます。
試行錯誤しながら試してみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windows11 デバイスセキュリテ...
-
SolarisとLinuxの違い
-
Linuxの頻繁なバージョンアップ...
-
Debian テスト版からsarge版へ...
-
UNIXとBSDとLinuxの違いを小学...
-
IDE-SATAアダプタを使ったUbunt...
-
OS選択時のGRUBに関して質問が...
-
エラー”Illegal seek”はどんな...
-
カーネルバッファとは何でしょうか
-
パフォーマンスモニタの%Proces...
-
パソコンでゲームをプレイしよ...
-
1枚でも「1枚”組”」なのですか?
-
OS再インストール前にブルーバ...
-
ubuntu8.0.4にopenssl-develを...
-
phpでmb関数が使えない
-
Apacheとtomcatの削除
-
「クラスが登録されていません 」
-
外部レポジトリとは
-
Debianにpstreeをインストール...
-
LinuxのOS(CentOS6.10)のイン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows11 デバイスセキュリテ...
-
SolarisとLinuxの違い
-
カーネルバッファとは何でしょうか
-
パフォーマンスモニタの%Proces...
-
デュアルCPUのマシンにRedHat9...
-
/dev/nvme0n1p2 clean と表示さ...
-
フェイクRAIDとソフトウェアRAI...
-
カーネルアップグレード後、una...
-
Windows Vistaは本当にゴミOSな...
-
Linuxって何?
-
Dockerコンテナ(centos7.9)の...
-
エラー”Illegal seek”はどんな...
-
最近、よくOpenWall という言葉...
-
HP-UX(11.23)からDAT装置を認識...
-
違いを教えください!!
-
OSの中身
-
CentOS6 の画面サイズの設定
-
デュアルコアCPUをシングルにし...
-
割り込み不可能?なプロセスを...
-
unix と lynux の違い、そして...
おすすめ情報