ボーレート設定

接続する機器の通信仕様や、利用するケーブルの品質、さらには、利用するパソコンの処理能力(動作スピード)および、負荷 (他のプログラムとの同時実行など)によって、ボーレートの上限は左右されます。
また、RS-422A/485通信の場合、ケーブル長は1200mまで延長できますが、通信距離を長くするとボーレートは下げる必要があります。

このため、利用デバイス仕様表に記載されているボーレート内であっても、この上限を超えたスピードで通信を行うと、通信エラー(オーバーラン、パリティ、フレーミング)の原因となります。
診断プログラムなどで実際に通信を行い、設定可能なボーレートを確認してください。

 

設定可能なボーレートは、デバイス上に搭載されている通信用LSI仕様に依存します。
以下に概略を示しますが、設定できるボーレートの詳細は、各デバイスの解説書を参照ください。

下表のデバイスは、設定できるボーレートが決まっています。
表内に記載されていないボーレートは設定できませんので、ご注意願います。

対象デバイス

設定可能ボーレート
bps (ビット/秒)

COM-1(USB)H
COM-1P(USB)H
COM-1PD(USB)H

 

300, 600, 1200, 2400, 4800, 9600, 19200,  38400, 57600, 115200, 230400, 460800, 921600

 

下表のデバイスは、算出用の基準クロックに準じて柔軟にボーレート設定ができます。
表内に代表的なボーレート設定例を示しますが、そのほかにも設定できるボーレートがあります。

対象デバイス

ボーレート bps (ビット/秒)

算出用の基準クロック

最小値

最大値

設定例

 

COM-4CN-USB
COM-4PDHN-USB

 

300

921600

300, 600, 1200, 2400, 4800, 9600, 19200

設定誤差 0.1603%
 115200, 230400, 460800, 921600

48,000,000

COM-1C-LPE
COM-2C-LPE
COM-2C-PE
COM-4C-LPE
COM-4C-PE
COM-8C-LPE
COM-8C-PE

COM-2PC-PE
COM-2PD-PE
COM-4PC-PE

COM-4PD-PE

COM-1(LPCI)H
COM-2(LPCI)H
COM-2(PCI)H
COM-4(LPCI)H
COM-4(PCI)H  ※基板番号 No.7190C以前
COM-8(PCI)H
COM-8C-LPCI

COM-1PD(LPCI)H
COM-2PD(LPCI)H
COM-2PD(PCI)H
COM-4PD(PCI)H

 

50

921600

50, 75, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600

921,600

COM-1PDH-LPE
COM-2PD-LPE

COM-4(PCI)H ※基板番号 No.7190D以降

 

50

921600

50, 75, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600

921,600

COM-2CL-PCI
COM-2DL-PCI
COM-4CL-PCI
COM-4DL-PCI

 

50

230400

50, 75, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400

921,600

※CPS-BXC200と併用時のみ対応

CPS-COM-1PC
CPS-COM-1PD
CPS-COM-2PC
CPS-COM-2PD

 

50

921600

50, 75, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600

921,600

(BX-M210 GPIOモデル上のEXT-A、EXT-B)

COM-1C
COM-1D

50

115200

50, 75, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200

115,200

 

分周レジスタ値 (Clock Divisor)

デバイスに搭載されているLSIの分周レジスタは整数値で設定します。

指定するボーレートが、算出用の基準クロックの整数倍でない場合、小数点は四捨五入され、LSIの分周レジスタ(Clock Divisor)へセットされます。
このため、指定するボーレートによっては、デバイスのボーレート設定時に設定誤差が発生します。

一般的に、ボーレート誤差が1%未満であれば、エラーは発生せずシリアル通信できます。
しかしながら、機器と実際に通信を行い設定可能なボーレートであることをご確認ください。

なお、分周レジスタへの設定値算出結果が整数であっても、利用するデバイスの最大ボーレートを超えて設定できません。

<分周レジスタへの設定値算出式>
 分周レジスタ(Clock Divisor) = 算出用の基準クロック ÷ 指定ボーレート

 

設定誤差が発生しない例: (COM-4CN-USBの場合

 算出用の基準クロック=48,000,000Hz(48MHz)、指定ボーレート 9,600[bps]
 算出結果は5,000となるため、分周レジスタへの設定は5,000となり、設定誤差は発生しません。

(内訳)
 分周レジスタ(Clock Divisor)= 算出用の基準クロック ÷ 指定ボーレート
              = 48,000,000Hz ÷ 9,600bps
              = 5,000

 動作ボーレート[bps] = 算出用の基準クロック ÷ 設定した分周レジスタ値
           = 48,000,000Hz ÷ 5,000
           = 9,600bps

 設定誤差[%] = ((動作ボーレート ー 指定ボーレート) ÷ 指定ボーレート) x100
        = ((9,600bps ー 9,600bps) ÷ 9,600bps) x100
        = 0%

 

設定誤差が発生する例:(COM-4CN-USBの場合)

 算出用の内部クロック=48,000,000Hz(48MHz)、指定ボーレート 115,200[bps]
 算出結果は416.66666となるため、分周レジスタへの設定は416となり、設定誤差 0.1603%が発生します。

(内訳)

 分周レジスタ(Clock Divisor)= 算出用の基準クロック ÷ 指定ボーレート
              = 48,000,000Hz ÷ 115,200bps
              = 416.66666   ※分周レジスタへは、416が設定される

 動作ボーレート[bps] = 算出用の基準クロック ÷ 設定した分周レジスタ値
           = 48,000,000Hz ÷ 416
           = 115,384.6153bps

 設定誤差[%] = ((動作ボーレート ー 指定ボーレート) ÷ 指定ボーレート) x100
        = ((115,384.6153bps ー 115,200bps) ÷ 115,200bps) x100
        = 0.1603%