パソコン同士でRS-232Cのシリアル通信をどうやるかをすごく簡単に説明してみます。

こんにちわ。

パソコンをつかった通信の基本中の基本(だと思います。。。)のRS-232Cによるシリアル通信ってどうやってやるかを、とてもざっくり簡単に説明してみます。

シリアル通信インターフェースの話
こんにちわ。 今のパソコン、特にノートパソコンで見かけなくなった入出力インターフェースにシリアル通信インターフェースがあります...

上の記事でも触れていますが、データを送受信するための伝送路を1本、または2本使用して、データを1ビットずつ送受信する通信のことをシリアル通信といいます。

今では実際にやっている例はなくなったと思いますが、今のようにネットワークが発達する前には、パソコン同士をシリアル通信させることが結構ありました。

どうやってやったらできるのか? 簡単に説明してみます。

スポンサーリンク
スポンサーリンク




パソコン同士をケーブルでつなぐ

最近のパソコンにはありませんが、昔のパソコンにはシリアル通信ポートが標準でついていました。

コネクタとケーブルの規格は、D-sub9とかD-sub25というものです。

これはD-sub9ピンのケーブルですね。

(出典:ウィキメディア・コモンズ photo by Faxe / CC by-sa 3.0)

通信の規格としてはRS-232Cというものになります。

RS-232Cですと、シンプレックスという伝送モードで1対1の通信が可能です。

最大の伝送速度は20kbpsでケーブルの長さはおおよそ15mまで引っ張ることが可能です。

それ以上になると、別の規格をつかったり、モデムなどを接続して電話回線経由で接続ということになりますね。

パソコン同士直接つなぐときはクロスケーブル

シリアル通信で使われている信号線には次のようなものがあります。

DCD キャリア検出
RxD 受信データ
TxD 送信データ
DTR データ端末レディ
SG  信号用接地または共通帰線
DSR データセットレディ
RTS 送信要求
CTS 送信許可
RI  被呼表示

パソコン同士をシリアルケーブルで接続する場合、クロスケーブルというものを使います。

クロスケーブルは、少なくとも一方のRxDと他方のTxdと接続されているケーブルのことを言います。

ちなみに一方のRxDが他方のRxD、TxDがTxdに接続されているものをストレートケーブルと言います。

モデムなどに接続する場合はこちらです。

要は電話回線がクロスしているイメージです。

実際、パソコンショップなどで、販売されているRS-232Cケーブルは「ストレート」「クロス」と表記されていますよね。

通信するための手順

2台のパソコンをクロスケーブルで接続したら、ソフトウェアを使って一方のパソコンからデータを送信してやります。

一番簡単なのは、ターミナルソフトと呼ばれるものを使う方法です。

昔のホストコンピュータ時代の端末(ターミナル)は離れた場所に大型コンピュータがあって、電話回線でつながっていました。

その端末をエミュレートするようなソフトです。

Windowsですと今でも「Tera Term」なんかが一番おすすめなんでしょうかね?

あとは、通信をするための決め事を両方のパソコンで同じ設定をします。

細かい部分の設定を1つ1つするというよりは、ターミナルソフトで一括して設定することになります。

  • 通信方式は全二重方式かつ、非同期通信となります。パソコンのシリアル通信では普通はこれです。
  • 通信のポートを選択します。Com1とかCom2とか
  • 通信速度を決めます。2400bpsとか、9600bpsとか
  • データビット長を決めます。英数字なら7ビット、それ以外のデータもあれば8ビットでしょうか?
  • ストップビット長を決めます。1ビットとか1.5ビットとか
  • エラーパリティのチェックを設定します。偶数パリティとか奇数パリティとかパリティ無しとか
  • フロー制御をするしないを決めます。受信側のバッファがあふれる可能性があればフロー制御をします。 などなど

こういったものを設定すれば準備完了です。

あとは、通信したいデータをターミナルソフトの画面で入力していくと相手側のパソコンのターミナルソフトの画面に入力した文字が順番に表示されていきます。

簡単に言うと、こういった手順、設定でパソコン同士のシリアル通信ができます。

なんとなくでも理解いただけるようにかなり簡略化して大雑把に説明しましたので実際にはもう少し必要な設定などが必要かもしれません。

また、最近のパソコンもOSも高機能ですので、この手順通りでは実際には動かない場合もありますのでご容赦を。

ですが、パソコン同士のシリアル通信はだいたいこのような仕組みでやっていました。。。ということがなんとなく理解いただけたら幸いです。

今回も最後までおつきあい、ありがとうございました。

スポンサーリンク
スポンサーリンク




スポンサーリンク




シェアする

  • このエントリーをはてなブックマークに追加

フォローする