- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2018-09-28T11:07:20+09:00","default:honma","honma")
#author("2018-09-28T11:13:43+09:00","default:honma","honma")
* シリアルポートの話 [#aef71a0a]
** ピン配置 [#caa8d0cb]
出展元:[[Linux Serial HOWTO 日本語版:https://linuxjf.osdn.jp/JFdocs/Serial-HOWTO.html]]
シリアルポートのピン配置 (「→」 が PC から外部への方向です)
(DCD は CD と記載されることもあります)
ピン番号 ピン番号 略称 正式名称 方向 動作および目的
9ピン 25ピン
3 2 TxD Transmit Data → PC からバイトデータを送信する
2 3 RxD Receive Data ← PC がバイトデータを受け取る
7 4 RTS Request To Send → RTS/CTS フロー制御
8 5 CTS Clear To Send ← RTS/CTS フロー制御
6 6 DSR Data Set Ready ← 通信可能になったことを知らせる
4 20 DTR Data Terminal Ready → 通信可能になったことを知らせる
1 8 DCD Data Carrier Detect ← モデムが相手と繋がっていることを示す
9 22 RI Ring Indicator ← 電話のベルが鳴っている状態を示す
5 7 Signal Ground
** RTS/CTS [#ufde0153]
Windows APIのRTSフロー制御では[[_DCB structure:https://docs.microsoft.com/en-us/windows/desktop/api/winbase/ns-winbase-_dcb]]に定義される4つの使い方が存在する。
+ RTS_CONTROL_DISABLE ... RTSは常にLOW
+ RTS_CONTROL_ENABLE ... RTSは常にHI
+ RTS_CONTROL_HANDSHAKE ...
+ RTS_CONTROL_TOGGLE ...
RTS_CONTROL_DISABLE ... RTSは常にLOW
RTS_CONTROL_ENABLE ... RTSは常にHI
RTS_CONTROL_HANDSHAKE ... 受信バッファが3/4以上埋まるとRTSがLOWになり、1/2以下になるとHIになる
RTS_CONTROL_TOGGLE ... 受信バッファにデータがなければRTSがLOWになり、データがあればHIになる
Linux では、RTS_CONTROL_HANDSHAKEに相当する機能のみ。