Hobby Lab 趣味のモノ作り実験のサイトです。
Software Protocol Serial_communication
1.シリアル通信とは
 (1)概要
 (2)信号の違い
 (3)接続様式比較
2.USART(UART)
 (1)信号の電圧
 (2)通信線
 (3)通信信号と設定
3.RS232C非同期式通信
 (1)信号の電圧
 (2)通信線
4.RS422AとRS485など
 (1)違い
 (2)注意点
 (3)RS458とEthernetの違い

Sf:Pt プロトコル関係
SfPt:MODBUS
Sf:OS関係
SfO:Mint 関係
 PCへMint導入
 アプリ導入
 その他1
 アイコンを作る
SfO:Ubuntu 関係
 PCへUbuntu導入
 アプリ導入
SfO:RaspberryPi 関係
はじめに
 RaspberryPiへOS導入
 アプリ導入
 Programming
シェル・コマンド関係
 LXTerminal
 sed
 i2ctools
I/O・アプリ関係
 RealVNCとViewer
 IO動作確認
 MySQL
 Python
 raspberrypiハード
Sf:Server 関係
SfS:レンタルサーバー
 CORE-X
SfS:Windowsサーバー
 XAMPPの概要と導入
 Note XAMPP
 Note XAMPP Err
 Note Apache
 Note PHP
 Note MyQSL
Sf:Programming関係
C 関係
 C言語でプログラムミング
Python 関係
はじめに
 RaspberryPi開始
 Windows開始
共通事項
 プログラミングNote
 パッケージ導入 pip
 標準ライブラリ
 Serialライブラリ
 SMBusライブラリ
HTML関係
 開始とNote
Sf:IDE 開発環境
SfI:STM32
 STM32CubeIDEでプログラム
 HALと直接レジスター操作の速度
SfI:CH32
 MounRiver Studioでプログラム
SfI:Arduino
各ボード毎の設定
 Uno 設定
 Mega2560 設定
 DUE_CH340 設定
 ESP_WROOM02 設定
 ESP12F_D1mini 設定
 ESP32 設定
 CH32V 設定
ライブラリー
 OneWire使い方
その他
 日本語リファレンス(外部リンク)
 WiFi Macアドレスを調査
Sf:AP アプリ関係
SfA:エディタ
SfA:回路図CAD
SfA:回路シミュレータ
 シミュレーションの設定
 色の設定
 電源設定設定
SfA:リモートソフト
Sf:Otgers その他

1.シリアル通信(Serial_communication)とは

 (1)概要

データを送受信するための伝送路を1本、または2本使用して、データを1ビットずつ連続的に送受信する通信方式です。
少ない信号線での接続が可能であるため、線材や中継装置のコストが抑えられるなどのメリットがある。
MPUなどで使用されているシリアル通信にはUSART(UART含む)やSPI、I2C、CAN、USBなどがある。

なおUSARTとは Universal Synchronous & Asynchronous Receiver/Transmitterの略で、このページではUSARTに関係するシリアル通信の規格 RS-232C、RS-422A、RS-485 などの概要を記載する。

RS とは Recommended Standard(推奨標準)の略称で RS-232C・RS-422A・RS-485は、EIA(Electronic Industries Association:米国電子工業会)の通信規格です。
中でもRS-232Cは、1963年に策定以降通信規格の中でも用途を問わず多く普及し、パソコンにも標準で搭載され、モデムやマウスの接続によく利用されていました。
現在でもパソコンから使用する場合はUSBからUSARTやRS232Cに変換してMPUやセンサ、アクチュエータなどに接続出来るようになっている。
 USBーUART変換ICではCP2012などの変換ICがよく使用されている。

 (2)信号の違い(USARTとRS232C・RS422A・RS458など)

  データは半角数字の 0 でアスキーコードでは 0x30 です。
項目USARTRS232CRS422,458
電圧レベルデバイスの電源電圧に準拠
(例:3.3V、5V)
電圧に正負を使用
(例:±3V〜±15V)
2線をリッツ使用して反転信号
(例:2V〜15V)
信号論理
ノイズ弱い強い
通信線長短い 基板内、基板間中 15m大 1200m
用途通信部品間近距離
1 対 1 のモデムや測定器
ノイズが多い電力系環境
1or多 対 多 の測定器他
RS232CとUSARTでは信号線の電圧が違うため、MAX232の様な変換ICが必要になる。
他の変換器で例えば
 UART(5V)-RS232C変換ではMAX23*,ADM232などいろいろな半導体メーカーが出している。
 UART(5V)-RS458変換ではMAX485などの変換ICがある。
UART側を3.3V接続が出来るようにCD4069BM(LX)などのインバータICを間に使用したモジュールも安価に出ている。

 (3)接続様式比較

項目RS232C4線式 RS422A4線式 RS-4852線式 RS-422A,485
接続イメージ
RS458のみ R=100(Ω)
規格の範囲・電気的仕様
・ピンアサイン
・コネクタ
・電気的仕様のみ
最大接続数1ドライバ
1レシーバ
1ドライバ
原則1レシーバ
最大10レシーバ
32ドライバ
32レシーバ
4線式と同じ
負荷負荷3(kΩ)程度負荷100(Ω)両端に100(Ω)接続4線式と同じ
通信方式全2重
フルデュプレックス
半2重
ハーフデュプレックス
配線方式不平衡
シングルエンド
平衡
ディファレンシャル
最大ケーブル長15m1200m
最大伝送速度20Kbps10Mbps
(距離による)




2.USART(UART)

 (1)信号の電圧

MPUにより電圧が違っているので、仕様を確認すること。
a.Hi電圧が5(V)や3.3(V)など。
b.電圧変換器を用いる場合は特に Lo-Hi 電圧閾値。

 (2)通信線

 下表についてはCH32V203などを参考にした。その他のMPUもよく似た端子を用意していると思う。
 下表の c.d.項の線が無いものはe.項の様に自作する必要がある。

a.単線半二重モード

信号名PC・制御側説明方向信号名被制御側説明
TX送信・受信データ
TX受信・送信データ
GND共通接地線GND共通接地線

b.全二重モード

信号名PC・制御側説明方向信号名被制御側説明
RX受信データTX送信データ
TX送信データRX受信データ
GND共通接地線GND共通接地線

c.フロー制御を行う場合に使用する信号線

MPUが受信データを読み出す前に新たなデータを受信すると、内容が上書きされデータが失われてしまう。
この時相手にデータを送信しないように制御する信号を別の信号線により出す。
また上記をできるだけ防ぐためにデータレジスタをFIFO(First In First Out)構造にして受信したデータを一括で処理する場合があるが、FIFOが満タンになっても同じようにする。
この様な制御をフロー制御と言い下表の信号線を用いる。
信号名PC・制御側説明方向信号名被制御側説明
RTS受信可能を伝えるCTS送信して良いか判断する
CTS送信可能か判断RTS受信可能を伝える
状態はHi=受信不可、Lo=受信可で示す。

d.同期モードを使用する場合

信号名PC・制御側説明方向信号名被制御側説明
CK同期信号(クロック)を伝える
受信信号の読み取りタイミングを判断する

CK受信信号の読み取りタイミングを判断する
同期信号(クロック)を伝える

e.その他信号線

その他必要な信号線はGPIOおよび割り込み設定を使用して作ると思います

 (3)通信信号と設定


a.ボーレート

1秒間の信号変化回数。RS232Cではビットレートと等価。
代表的な値 (300, 1200, 2400, 9600, 19200, 38400, 57600, 115200 bps)

b.スタートビット

文字の送信の開始を示します。
1ビット時間 “0” レベルにする。

c.データ

CH32Vでは 8 bit または 9 bit の設定が出来る。

d.パリティチェック

レベル"1"の信号数を設定の値にパリティー領域で調整する。
奇数="1"の信号数をパリティー領域も含む合計で奇数にする。
偶数="1"の信号数をパリティー領域も含む合計で偶数にする。
なし=パリティー領域がない。

e.ストップビット

データの終端を表すビットの長さを設定する。
通常は、1 , 1.5 , 2 ビットから選択します。




3.RS232C非同期式通信

 (1)信号の電圧

変換ICにより出力される±電圧差が違う。
ノイズが多いような環境の場合は信号電圧を高くするのも誤動作防止になる。
電圧だけで対応できないなら、電線数は増えるがRS422やRS458の仕様にするほうが良い。

 (2)通信線

以前よく使用されていた9ピンコネクターの場合のピン別目的は下表のとおり。
PinNo信号名PC・制御側説明方向被制御側説明
1CDキャリア検出受信キャリア検出
2RXD受信データ送信データ
3TXD送信データ受信データ
4DTRデータ端末レディデータセットレディ
5GND共通接地線共通接地線
6DSRデータセットレディデータ端末レディ
7RTS送信要求送信可
8CTS送信可送信要求
9RI被呼表示着信呼び出し中を通知




4.RS422AとRS485など

 (1)違い

おもに接続できる機器の台数と思われる。

 (2)注意点

RS485と記載されていてもコネクターに規定が無いので、RS458対応の商品を購入する場合は自分でなんとか出来る範囲か確認が必要。

 (3)RS458とEthernetの違い

RS485とLAN(Ethernet)で使用するケーブルなどの違い
RS485LAN(Ethernet)
ケーブルシールド付きのツイストペア線を推奨ツイストペアの線(カテゴリーで違うが)
コネクター規定なしRJ45コネクタを持つ8極構造




































更新日 2025/11/25 19:35  管理者 平林 剛Hirabayashi Takeshi