RS232C予備知識
DTEとDCE
RS232Cは2台の装置の間で通信を実行することを目的として作られたシリアル転送形式のインターフェースで、もともとDTE(Data Terminal Equipment:端末装置、ホストコンピュータ)とDCE(Data Communication Equipment:終端装置、モデム)を結ぶインターフェースとして標準化されたものです。
同一の信号線であっても、DTE側から見る場合とDCE側から見る場合では意味が異なったり表記が異なったりしますので注意を要します。一般的にはDTE側から見た信号線名で統一して入力/出力の違いでDTEとDCEを区別します。
【Dsub9ピンの場合】
DTE【一般的にオス/インチネジ】 | DCE【一般的にメス/インチネジ】 | |||||
1 DCD | Data Carrier Detect | (キャリア検出データ) | 1 CD | Carrier Detect | (キャリア検出) | |
2 RxD | Recieve Data | (受信データ) | 2 SD | Send Data | (送信データ) | |
3 TxD | Transmit Data | (送信データ) | 3 RD | Recieve Data | (受信データ) | |
4 DTR | Data Terminal Ready | (端末準備可) | 4 DR | Data Set Ready | (データセットレディ) | |
5 GND | Ground | (信号用接地) | 5 SG | Signal Ground | (シグナルグランド) | |
6 DSR | Data Set Ready | (データセットレディ) | 6 ER | Equipment Ready | (データ端末レディ) | |
7 RTS | Request to Send | (送信要求) | 7 CS | Clear to Send | (送信可) | |
8 CTS | Clear to Send | (送信可) | 8 RS | Request to Send | (送信要求) | |
9 RI | Ring Indicator | (被呼表示) | オープン |
9 | ||
10.11(耳)FG | Frame Ground | 11FG | Frame Ground |
※ピン番号、表記はそれぞれDTEがPC、DCEがKS-1-HSDのものを記載してあります。
【Dsub25ピンの場合】
DTE【一般的にオス/ミリネジ】 | DCE【一般的にメス/ミリネジ】 | |||||
2 TxD | Transmit Data | (送信データ) | 2 RD | Recieve Data | (受信データ) | |
3 RxD | Recieve Data | (受信データ) | 3 SD | Send Data | (送信データ) | |
4 RTS | Request to Send | (送信要求) | 4 CS | Clear to Send | (送信可) | |
5 CTS | Clear to Send | (送信可) | 5 RS | Request to Send | (送信要求) | |
6 DSR | Data Set Ready | (データセットレディ) | 6 ER | Equipment Ready | (データ端末レディ) | |
7 GND | Ground | (信号用接地) | 7 SG | Signal Ground | (シグナルグランド) | |
8 DCD | Data Carrier Detect | (キャリア検出データ) | 8 CD | Carrier Detect | (キャリア検出) | |
20 DTR | Data Terminal Ready | (端末準備可) | 20 DR | Data Set Ready | (データセットレディ) | |
Case | GND もしくは FG | Case | GND もしくは FG |
RS232C信号線の意味
D-SUB9ピンの場合
[1] DCD:Data Carrier Detect / CD:Carrier Detect
CDとは、一般にはモデムが出力する信号です。電話がつながった後データ転送が開始されたことを意味します。ディジタルデータはキャリアと呼ばれる搬送信号(耳で聞くと「ピー」という音)に変調をかけられて送られてきますから、これを検出してこの信号線を論理"1"にします。
DCDとは、CDを検出することを意味します。DTE側ではこれをどう扱ってもよいわけですが、通常は通信を開始した後この信号線を監視しておいて通信の終了を検知したりします。モデムを使用していない場合はCD、DCDともに不用ですので論理を"1"にしておきます。
[2] RxD、RD:Recieve Data
受信用のデータラインです。入力専用データラインです。
[3] TxD、SD:Transmit Data,Send Data
送信用のデータラインを意味します。
[4] DTR、ER:Data Terminal Ready、Equipment Ready
DSRと対になる信号でこちらの装置が正常に動作していること、すなわち電源が入っていることを相手に知らせるためのものです。正常に動作しているときには論理を"1"にします。KS-1-HS/KS-10P-HSでは、この入力をER信号として折り返しできるようになっています。
[5] GND、SG:Ground,Signal Ground
信号線のグランドです。FGとは接続されていません。KS-1-HS/KS-10P-HSではディップスイッチによってFGとSGを接続することが可能です。
[6] DSR、DR:Data Set Ready
装置がつながっていることを知るための信号線です。相手側が正常に動作していると相手から論理"1"が送信されます。通常は相手側の電源が入っているかどうかを確認するためのものです。KS-1-HS/KS-10P-HSではホストコンピュータからのDTR信号をそのまま折り返し出力できるようになっています。
[7] RTS、RS:Request To Send
送信要求信号を意味します。相手からこちらにデータを送る要求を行います。論理を"0"にすると相手はデータを送ることを中断します。
[8] CTS、CS:Clear To Send
RTSと対になる信号で論理"1"が入力されているときにこちらかのデータ出力を実行します。この2つの信号を使って行うのがCTS/RTSフロー制御です。
[9] RI:Ring Indicator
被呼表示。モデムが回線から呼出信号を受信したときオンになる入力端子で、電話の呼出ベルが鳴っている状態を示すものです。
D-SUB25ピンの場合
[1] FG:Frame Ground
保安用グランドを意味します。RS232Cのコネクタのケースがシールドされていたり、ケーブルがシールドされていたりするときにはシールド側がここに接続されています。
[2] TxD、SD:Transmit Data,Send Data
送信用のデータラインを意味します。
[3] RxD、RD:Recieve Data
受信用のデータラインです。入力専用データラインです。
[4] RTS、RS:Request To Send
送信要求信号を意味します。相手からこちらにデータを送る要求を行います。論理を"0"にすると相手はデータを送ることを中断します。
[5] CTS、CS:Clear To Send
RTSと対になる信号で論理"1"が入力されているときにこちらかのデータ出力を実行します。この2つの信号を使って行うのがCTS/RTSフロー制御です。
[6] DSR、DR:Data Set Ready
装置がつながっていることを知るための信号線です。相手側が正常に動作していると相手から論理"1"が送信されます。通常は相手側の電源が入っているかどうかを確認するためのものです。KS-1-HS/KS-10P-HSではホストコンピュータからのDTR信号をそのまま折り返し出力できるようになっています。
[7] GND、SG:Ground,Signal Ground
信号線のグランドです。FGとは接続されていません。KS-1-HS/KS-10P-HSではディップスイッチによってFGとSGを接続することが可能です。
[8] DCD:Data Carrier Detect / CD:Carrier Detect
CDとは、一般にはモデムが出力する信号です。電話がつながった後データ転送が開始されたことを意味します。ディジタルデータはキャリアと呼ばれる搬送信号(耳で聞くと「ピー」という音)に変調をかけられて送られてきますから、これを検出してこの信号線を論理"1"にします。
DCDとは、CDを検出することを意味します。DTE側ではこれをどう扱ってもよいわけですが、通常は通信を開始した後この信号線を監視しておいて通信の終了を検知したりします。モデムを使用していない場合はCD、DCDともに不用ですので論理を"1"にしておきます。
[20] DTR、ER:Data Terminal Ready、Equipment Ready
DSRと対になる信号でこちらの装置が正常に動作していること、すなわち電源が入っていることを相手に知らせるためのものです。正常に動作しているときには論理を"1"にします。KS-1-HS/KS-10P-HSでは、この入力をER信号として折り返しできるようになっています。
[22] RI:Ring Indicator
被呼表示。モデムが回線から呼出信号を受信したときオンになる入力端子で、電話の呼出ベルが鳴っている状態を示すものです。
フロー制御とは
RS232Cを経由してデータを通信するときにデータの送受信をコントロールする必要があります。データ送信側が速いスピードで一方的に送信した場合、受信側のデータ処理においてデータの取りこぼしなどが発生してしまうためです。そこで送信している相手側を送信タイミングをコントロールするフロー制御が使われ、MS-DOSがサポートしているXフロー制御とCTS/RTSを使ってハンドシェイクを行うCTS/RTSフロー制御の2種類があります。
[Xフロー制御]
MS-DOSがサポートしている制御がXフロー制御です。データを受信している装置が「そろそろ処理できる能力を超えそうだから送信を一時的にストップしてくれ」ということを「Xoff」と呼ばれるコントロールコード(CTL-S,13h)を使ってデータ送信している装置に知らせます。また内部の処理が進んでデータを受信してもよい状態になると「データ送信を再開してくれ」ということを「Xon」(CTL-Q,11h)によって知らせます。Xon、Xoffのコントロールコードはデータ受信と逆方向のデータ線(TxD)を使って送りますので特殊なコントロール信号線は必要ありません。具体的にはMS-DOSのspeed.exeのコマンドラインのXパラメータを"有"に設定します。ただしデータそのものの中にこのコントロールコードを含めることができないのでアスキーコードの転送にしか使用できません。
[CTS/RTSフロー制御]
専用の制御線CTS/RTSを使用してハンドシェイクすることによってもフロー制御が可能です。データを受信できなくなると受信側はRTSの論理を"0"にして受信不可能を知らせ、送信側はCTSが"0"になると送信を中断します。送信の再開はRTSを"1"にすることによっておこなわれます。このCTS/RTSフロー制御は専用の制御線を使うため、送信するデータには制限がなくバイナリーデータでも送ることができます。
コンピューターによる配線の違い
PCにおいて、RS232C出力ポートのピンアサインは大きく2つに分類されます。1つは現在もっとも一般的に使用されている9ピン(DOS/V)配列のもの、もう1つは一昔前のPC-9801に代表される25ピン配列のものです。
9ピン配列のもの | ||
1 | DCD | キャリア検出 |
2 | RxD | 受信データ |
3 | TxD | 送信データ |
4 | DTR | データ端末レディ |
5 | SG | 信号グランド |
6 | DSR | データセットレディ |
7 | RTS | 送信要求 |
8 | CTS | 送信可 |
9 | RI | 被呼表示 |
25ピン配列のもの | ||
1 | GND | 保安用グランド |
2 | TxD | 送信データ |
3 | RxD | 受信データ |
4 | RTS | 送信要求 |
5 | CTS | 送信可 |
6 | DSR | データセットレディ |
7 | GND | 信号グランド |
8 | DCD | キャリア検出 |
9 | (N.C.) | |
10 | (N.C.) | |
11 | GND | 信号グランド |
12 | (N.C.) | |
13 | GND | 信号グランド |
14 | GND | 信号グランド |
15 | TxC2 | 送信クロック |
16 | (N.C.) | |
17 | RxC | 受信クロック |
18 | (N.C.) | |
19 | (N.C.) | |
20 | DTR | データ端末レディ |
21 | (N.C.) | |
22 | RI | 被呼表示 |
23 | (N.C.) | |
24 | TxC1 | 送信クロック |
25 | (N.C.) |
※(N.C.)=無結線状態
Next >> RS232C、RS422、RS485とは ~平衡と不平衡~