- ベストアンサー
termiosで任意のビットレートで通信
ubuntu10.04を使っています。 termiosで任意のビットレートで通信をしたいのですが、 どのような設定を用いれば良いのでしょうか? 具体的にはマイコンに設定できる通信速度の都合から 250kbpsで通信したいと考えています。 既にB19200,B115200などを設定した通信については 理解しているつもりです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
まずハードウェアに依存します。標準的には特定のビットレートしか使えない。 これは、1.8432MHzのクロックを何分の一かにして通信クロックを作るためです。 250kbpsというのは割り切れないので無理。 これ以外のビットレートを使いたい場合は、そういうシリアルカードを装着して、そのカードのドライバーを使う必要があります。 すくなくともtermiosではマニュアルに載っているビットレートだけしか使えません。
お礼
ありがとうございます。 どなたか、kernelのソースをいじる方法まで御存知の方が居ましたら、是非ご回答をお願い致します。 tty_ioctrl.cが該当ソースかと思ったのですが、ここでもdefineされた数値を使うだけで、より深く辿る道筋が分からず困っています。 海外のサイトでは、1.8432MHz→24MHzとすることが可能という断片的な記載を見つけ、これによって500kや1Mは設定できているのであればその整数分の1である250kは設定は出来るはずと思っています。。。
補足
そうなんですか。windowsのあるターミナルソフトだと、特殊なハードウェアを用いずとも250000と書けば問題なく通信できていたので、何か方法があるのかと思っていました。