[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:23867] Re: シリアル入出力バッファの指定方法は?



かねこです。
At 2:01 PM +0900 00.9.7, 大槻 恭裕 wrote:
>(ASUS ME-99を使っています)のマニュアルを見てもシリアルのICことは書かれて
>いなくて、ASUSホームページも不発でした。

最近は SuperIO か、South Bridge に入ってしまっているか、ですね。
特に新しいチップセットだとほとんど South bridge 内なので、Intel
か VIA のサイトに行く方が情報を得られるでしょう。

>憶測ですが 16550A互換でバッファが4096バイト相当のものがチップセットに含ま
>れているようです。結構大きなバッファが16550Aに用意されているのはIrDAをサ
>ポートしているためと思われます。

違うと思います。16550A は一バイトでも FIFO に入っていれば割り込む
ので、途中バイトをぼこぼこ落とすという状態ならともかく、今回のよ
うにまとまったところまで取り込めているなら確実にカーネル内までは
取り込めています。

>> あ、これは駄目です。現象は相手側のマイコンがとれないのではなく、
>> linux 側が落としているんです。stty で -ixon -crtscts している
>> んで、自分の出力が止められなくって自分の受信側で落としています。
>> マイコン側で XON/OFF が受けられないなら crtscts にしてrs485 変
>> 換のところか、そこまでのケーブルで細工すれば何とかなりそうだと
>> は思います。
>
>現在やろうとしている通信はコントロール線は一切無いためcrtsctsも使えません。

誤解与えたかな。マイコン側には見せないで linux の送受だけでフロー
制御すれば、ってつもりだったんですが、まぁインチキですね ;^.^)

>1024以上のデータを送信するときは1024ずつの送信と受信を繰り返すことにのし
>ました、4096でないのは16550A互換のものが4096のバッファを持っていないもの
>も存在するかもしれないためttyドライバーの1024の方に合わせました。
>一応、通信は正常に行われています。

これが無難だと思います。