表紙

CAN マルチネットワークボード
取扱説明書 通信編
ルネサス エレクトロニクス社 RX231, RL78/F15, RA2L1 搭載
HSB シリーズ応用キット-本書を必ずよく読み、ご理解された上でご利用ください

株式会社
REV.1.0.0.0

目次

－目 次－
注意事項 ......................................................................................................................................................... 1
安全上のご注意 ............................................................................................................................................... 2
概要 ................................................................................................................................................................ 4
1.

2.

3.

4.

CAN 通信の概要....................................................................................................................................... 6
1.1.

CAN の接続形態 ..................................................................................................................................... 6

1.2.

CAN の物理層......................................................................................................................................... 6

1.3.

CAN トランシーバとマイコンの接続 .......................................................................................................... 7

1.4.

CAN のデータパケット .............................................................................................................................. 8

1.5.

ビットスタッフィング ................................................................................................................................. 10

1.6.

1 ビットと TQ .......................................................................................................................................... 11

1.7.

CAN の ID ............................................................................................................................................. 121.8.

通信時の実際の波形例 ......................................................................................................................... 13

LIN 通信の概要....................................................................................................................................... 14
2.1.

接続形態 ............................................................................................................................................... 14

2.2.

LIN の物理層 ......................................................................................................................................... 14

2.3.

LIN のデータパケット .............................................................................................................................. 15

UART 通信の概要 .................................................................................................................................. 17
3.1.

接続形態 ............................................................................................................................................... 17

3.2.

UART のデータ波形 .............................................................................................................................. 17

3.3.

UART の通信速度 ................................................................................................................................. 19

マイコンボード上で実行されるデモプログラム（CAN 通信） ......................................................................... 20
4.1.

CAN-ID(1)で出力するデータ .................................................................................................................. 21

4.2. CAN-ID(2)でやり取りされるデータ ......................................................................................................... 22
4.2.1. データフレーム（外部からの指示）.................................................................................................... 22
4.2.2.

リモートフレーム（外部からデータを出力する様に要求） ................................................................... 25

5.

マイコンボード上で実行されるデモプログラム（LIN 通信） ........................................................................... 27

6.

マイコンボード上で実行されるデモプログラム（UART 通信） ....................................................................... 30

7.

PC 向けデモプログラム ............................................................................................................................ 36
7.1.
7.2.

HSB_CAN_MULTI_DEMO.EXE ............................................................................................................ 36
HSB_CAN_MULTI_DEMO2.EXE .......................................................................................................... 41

取扱説明書改定記録 ....................................................................................................................................... 54
お問合せ窓口................................................................................................................................................... 54

CAN マルチネットワークボード取扱説明書

株式会社

注意事項
本書を必ずよく読み、ご理解された上でご利用ください【ご利用にあたって】
1. 本製品をご利用になる前には必ず取扱説明書をよく読んで下さい。また、本書は必ず保管し、使用上不明な点がある場合は再読し、よく理解して使用して下さい。
2. 本書は株式会社北斗電子製マイコンボードの使用方法について説明するものであり、ユーザシステムは対象ではありません。
3. 本書及び製品は著作権及び工業所有権によって保護されており、全ての権利は弊社に帰属します。本書の無断複写・複製・転載はできません。
4. 弊社のマイコンボードの仕様は全て使用しているマイコンの仕様に準じております。マイコンの仕様に関しましては製造元にお問い合わせ下さい。弊社製品のデザイン・機能・仕様は性能や安全性の向上を目的に、予告無しに変更することがあります。また価格を変更する場合や本書の図は実物と異なる場合もありますので、御了承下さい。
5. 本製品のご使用にあたっては、十分に評価の上ご使用下さい。
6. 未実装の部品に関してはサポート対象外です。お客様の責任においてご使用下さい。

【限定保証】
1. 弊社は本製品が頒布されているご利用条件に従って製造されたもので、本書に記載された動作を保証致します。
2. 本製品の保証期間は購入戴いた日から１年間です。

【保証規定】
保証期間内でも次のような場合は保証対象外となり有料修理となります
1. 火災・地震・第三者による行為その他の事故により本製品に不具合が生じた場合
2. お客様の故意・過失・誤用・異常な条件でのご利用で本製品に不具合が生じた場合
3. 本製品及び付属品のご利用方法に起因した損害が発生した場合
4. お客様によって本製品及び付属品へ改造・修理がなされた場合【免責事項】
弊社は特定の目的･用途に関する保証や特許権侵害に対する保証等、本保証条件以外のものは明示・黙示に拘わらず一切の保証は致し兼ねます。また、直接的・間接的損害金もしくは欠陥製品や製品の使用方法に起因する損失金・費用には一切責任を負いません。損害の発生についてあらかじめ知らされていた場合でも保証は致し兼ねます。
ただし、明示的に保証責任または担保責任を負う場合でも、その理由のいかんを問わず、累積的な損害賠償責任は、弊社が受領した対価を上限とします。本製品は「現状」で販売されているものであり、使用に際してはお客様がその結果に一切の責任を負うものとします。弊社は使用または使用不能から生ずる損害に関して一切責任を負いません。
保証は最初の購入者であるお客様ご本人にのみ適用され、お客様が転売された第三者には適用されません。よって転売による第三者またはその為になすお客様からのいかなる請求についても責任を負いません。
本製品を使った二次製品の保証は致し兼ねます。

CAN マルチネットワークボード取扱説明書

株式会社

1

安全上のご注意
製品を安全にお使いいただくための項目を次のように記載しています。絵表示の意味をよく理解した上でお読み下さい。

表記の意味
取扱を誤った場合、人が死亡または重傷を負う危険が切迫して生じる可能性がある事が想定される取扱を誤った場合、人が軽傷を負う可能性又は、物的損害のみを引き起こすが可能性がある事が想定される

絵記号の意味一般指示

一般禁止

使用者に対して指示に基づく行為を強制するものを示します

一般的な禁止事項を示します

電源プラグを抜く

一般注意

使用者に対して電源プラグをコンセントから抜くように指示します

一般的な注意を示しています

以下の警告に反する操作をされた場合、本製品及びユーザシステムの破壊・発煙･発火の危険があります。マイコン内蔵プログラムを破壊する場合もあります。
1. 本製品及びユーザシステムに電源が入ったままケーブルの抜き差しを行わないでください。
2. 本製品及びユーザシステムに電源が入ったままで、ユーザシステム上に実装されたマイコンまたはＩＣ等の抜き差しを行わないでください。
3. 本製品及びユーザシステムは規定の電圧範囲でご利用ください。
4.

本製品及びユーザシステムは、コネクタのピン番号及びユーザシステム上のマイコンとの接続を確認の上正しく扱ってください。

発煙･異音･異臭にお気付きの際はすぐに使用を中止してください。
電源がある場合は電源を切って、コンセントから電源プラグを抜いてください。そのままご使用すると火災や感電の原因になります。

2

CAN マルチネットワークボード取扱説明書

株式会社

以下のことをされると故障の原因となる場合があります。
1. 静電気が流れ、部品が破壊される恐れがありますので、ボード製品のコネク
タ部分や部品面には直接手を触れないでください。
2. 次の様な場所での使用、保管をしないでください。
ホ コ リ が 多い 場所 、 長時 間 直 射日 光 があ たる 場 所 、 不 安定 な 場所 、
衝撃や振動が加わる場所、落下の可能性がある場所、水分や湿気の多い
場所、磁気を発するものの近く
3. 落としたり、衝撃を与えたり、重いものを乗せないでください。
4. 製品の上に水などの液体や、クリップなどの金属を置かないでください。
5. 製品の傍で飲食や喫煙をしないでください。
ボード製品では、裏面にハンダ付けの跡があり、尖っている場合があります。
取り付け、取り外しの際は製品の両端を持ってください。裏面のハンダ付け跡
で、誤って手など怪我をする場合があります。

CD メディア、フロッピーディスク付属の製品では、故障に備えてバックアップ（複製）をお取りください。
製品をご使用中にデータなどが消失した場合、データなどの保証は一切致しかねます。
アクセスランプがある製品では、アクセスランプ点灯中に電源の切断を行わないでください。
製品の故障や、データの消失の原因となります。

本製品は、医療、航空宇宙、原子力、輸送などの人命に関わる機器やシステム
及び高度な信頼性を必要とする設備や機器などに用いられる事を目的として、設計及び製造されておりません。
医療、航空宇宙、原子力、輸送などの設備や機器、システムなどに本製品を使用され、本製品の故障により、人身や火災事故、社会的な損害などが生じても、弊社では責任を負いかねます。お客様ご自身にて対策を期されるようご注意ください。

CAN マルチネットワークボード取扱説明書

株式会社

3

概要
本書では、CAN マルチネットワークボードで行われている通信に関して説明します。
CAN マルチネットワークボードでは、ボード間の通信として、
・CANボード間の通信で使用
・LIN
HSB_CAN_MULTI_4 と HSB_LIN_COMM ボード間の通信で使用
・UART(SCI)
HSB_CAN_MULTI_4 と PC 間の通信で使用の 3 種類の通信を使用しています。
HSB_CAN_MULTI_1 ~ HSB_CAN_MULTI_4 と、HSB_LIN_COMM、PC を接続した際に、それぞれの通信路でどのような信号がやり取りされるかを示しています。

4

CAN マルチネットワークボード取扱説明書

株式会社

CAN 通信

HSB_CAN_MULTI_1

HSB_CAN_MULTI_2
CAN 通信CAN 通信

USB-miniB

HSB_CAN_MULTI_3

HSB_CAN_MULTI_4
LIN 通信UART 通信HSB_LIN_COMM

USB-miniB ケーブル
[PC に接続]

本キットでは、ボード間の通信として CAN, LIN, UART の 3 種類を使用しています。

CAN マルチネットワークボード取扱説明書

株式会社

5

1. CAN 通信の概要
1.1. CAN の接続形態
CAN バス（2 線）

CANL

終端抵抗
(120)

終端抵抗(120)

CANH

ユニット(1)

ユニット(2)

ユニット(3)

図 1-1 CAN 接続形態
CAN は、2 線の CAN バスのラインに複数のユニットがぶら下がる形となり、以下のような形態を取ります。
・CAN バスは 2 線(CANH,CANL)の信号ラインとなる・2 本の信号線で、データの送受信を行う
・データパケットに含まれる ID により優先度が変わるが、各ユニットは基本的には対等
・バスの終端となるユニットは、終端抵抗を持つ（バスの両端で終端された形となる）

1.2. CAN の物理層
ドミナント
(0)

V

ドミナント
3.5V

CTX

L

2.5V

CRX

L

CTX

H

CRX

H

CANH

CANL
1.5V
レセシブ
(1)

レセシブ
(1)

レセシブ

ｔ

マイコン側

CAN トランシーバ ICCAN バス

図 1-2 CAN 物理層
CAN の物理層としては、2 本のライン(CANH, CANL)が、同電位に近い状態（レセシブ、デジタル的な 1）と、電位が開いた状態（ドミナント、デジタル的な 0）の、2 状態で、データを送ります。
マイコン側は、L（=VSS 電位,0V）と H（=マイコン VCC 電位,5V または 3.3V）の信号をやりとりしますが、マイコンボ
ード上に搭載されている、CAN トランシーバ IC が、マイコンの L/H と CAN のドミナント / レセシブの変換を行います。
※3.5V/2.5V/1.5V の電圧は代表的な値を示しています6

CAN マルチネットワークボード取扱説明書

株式会社

CAN は、LIN や I2C の様にバスに自分のタイミングでデータを流す事のできるマスタが決まっている訳ではないため、バス上でのデータ衝突（2 つ以上のモジュールが同時に出力する）が起こりえる構成となっています。
ドミナント
L
データ
衝突

on CANHL

on CANL

H
off
L
マイコン側

off

CAN バス

CAN トランシーバ ICCAN トランシーバ IC 回路（イメージ）

図 1-3 データ衝突時
CAN バスで、データの衝突が起こった際は、バスに接続されているユニットで、1 つでも L（ドミナント）を出力するユニットがあれば、CAN バスはドミナントとなり、CAN バスに接続されているユニットは L を受信します。
（規格としてデータの衝突が許されており、ドミナントが優先となります。）
CAN モジュールは、自局が送信したデータと CAN バス上のデータ（トランシーバ回路を経由して受信したデータ）を常に比較しており、データの衝突（自局が送信したデータとバス上のデータの不一致）が起こった際は、CAN の規格に定められた動作（送信をストップし、後ほど再送する等）を行います。

1.3. CAN トランシーバとマイコンの接続
マイコンと CAN トランシーバの接続は図 1-4 に示すような形態となります。

VCC

CANH

CAN TX

CAN バス

0
out
CANL

in

レセシブ/ドミナント波形

CAN RXCAN トランシーバ IC
マイコン(RX/RA)

0-VCC のデジタル信号

図 1-4 CAN トランシーバとマイコンの接続
マイコン側は、デジタルの出力ポートと入力ポートで CAN の信号のやり取りを行います。CAN トランシーバ IC は、入力されたデジタル信号を CAN の物理層の波形に変換して CAN バスに流します。また、CAN バスの波形を、デジタル信号に変換してマイコンに渡します。

CAN マルチネットワークボード取扱説明書

株式会社

7

1.4. CAN のデータパケット
データフレーム／リモートフレーム

V（標準フォーマット）
SOF ID(11) RTR IDE

r0

DLC(4)

data(0~64)

CRC(15) CRC ACK ACK EOF(7)t

レセシブ（拡張フォーマット）
ドミナント
ID(11) SRR IDE
ID bit 28-18

ID(18)

RTR r0r1(カッコ内:ビット数)

ID bit 17-0

図 1-5 CAN データパケット
CAN のデータパケットは、ID や各種制御情報、CRC コード、ACK（受信側応答）等から構成されています。
CAN には、種々のフレームがありますが、代表的なものはデータを送信する「データフレーム」と、相手にデータの送信を要求する「リモートフレーム」です。
・標準フォーマット（先頭部分）
フィールド
SOF
ID
RTR
IDE
r0

ビット長
1
11
1
1
1

役割
フレーム送信の開始
CAN-ID
データフレーム(0), リモートフレーム(1)区分
標準フォーマット(0), 拡張フォーマット(1)区分
予約

備考
ドミナント(0)役割
フレーム送信の開始
CAN-ID（前半）RTR の代替
標準フォーマット(0), 拡張フォーマット(1)区分
CAN-ID（後半）データフレーム(0), リモートフレーム(1)区分
予約
予約

備考
ドミナント(0)29 ビットの ID の前半部分
レセシブ(1)
拡張フォーマットではレセシブ(1)29 ビットの ID の後半部分
拡張フォーマットでは位置が変わる

標準フォーマットではドミナント(0)・拡張フォーマット（先頭部分）
フィールド
SOF
ID
SRR
IDE
ID
RTR
r0
r1

ビット長
1
11
1
1
18
1
1
1

・後半部分（標準フォーマットと拡張フォーマットで共通）
フィールド
DLC
data
CRC
CRC
ACK

8

ビット長
4
0~64
15
1
1

役割
データバイト数
送信データ（0~8 バイト）
データ化けの検証に使用される CRC コード
CRC のデリミタ（境界）ACK スロット

CAN マルチネットワークボード取扱説明書

株式会社

備考
0~8
リモートフレームの場合 0 ビット
レセシブ(1)
送信側レセシブ(1), 受信側ドミナント(0)フィールド
ACK
EOF

ビット長
1
7

役割
ACK デリミタ（境界）フレームの終了コード

備考
レセシブ(1)
レセシブ(1)

標準フォーマットの場合、ID は 11bit で構成されます。拡張フォーマットの場合、ID は 29bit となりますが、図 2-5の様に連続して 29bit 送信される訳ではなく、2 つに分割される形となります。

V

データフレーム（標準フォーマット）
ID

送信側

data

DLC

SOF 0x003 RTR IDE

r0

ドミナント

レセシブ

0x4

0x01 0x23 0x45 0x67

CRC(15) CRC ACK ACK EOF(7)
S

受信側

D

t

ACK

図 1-6 データフレーム送信時のパケット
CAN では、標準フォーマット、データフレームで 4 バイト送信した場合、図 2-6 の様なデータ列となります。送信側
は、CRC 15 ビット送信後に、
CRC デリミタ（レセシブ 1）
ACK スロット（レセシブ 1）
ACK デリミタ（レセシブ 1）を送信します。
このとき、受信側となるモジュールは、SOF から CRC までで、データ列に矛盾がない場合、ACK スロット(ACK, S)のタイミングで、ドミナント(0)を出力（ACK を返す）します。
送信側は、ACK スロットのタイミングで、自分が送信しているのはレセシブ(1)だが、バスの状態がドミナント(0)を検出すると、データが相手に届いたと認識し、データ送信完了（フラグや割り込み）となります。
CAN バス上に、ACK スロットのタイミングでドミナント(0)を返すモジュールがなければ、（送信の設定によっても変わりますが）送信側は、データの再送を試みます（データ送信が繰り返されます）。
よって、CAN の動作を見る場合は、2 つ以上のモジュールを接続し、送信側に対して ACK を返すモジュールが存在する事が非常に望ましいと考えます。（本キットでは、通信の相手となる対向機とペアで使用する事を推奨します。）

CAN マルチネットワークボード取扱説明書

株式会社

9

V

リモートフレーム（標準フォーマット）
ID

送信側

ドミナント

レセシブ

DLC

SOF 0x004 RTR IDE

0x04

r0

CRC(15) CRC ACK ACK EOF(7)
S

受信側

D

t

ACK

図 1-7 リモートフレーム送信時のパケット
リモートフレーム（相手にデータの送信要求を行う）では、ID=返送を要求する相手の ID, RTR=1, DLC=相手に送って欲しいバイト数, data=空（0 バイト）となります。

1.5. ビットスタッフィング
CAN のフレームは、同一信号が 6 ビット以上続く場合、直前の 5 ビットの反転信号（スタッフビット）を挿入する仕様です。図では、レセシブ(1)のスタッフビットとなっていますが、レセシブ(1)のデータが続いた際は、ドミナント(0)のスタ
ッフビットが挿入されます。
ドミナント=0

ビットスタッフィングがない場合

V

ID=0x00 のケース
ID
10

SOF

ID
9

ID
8

ID
7

ID
6

ID
5

ID
4

送信波形のタイミングは
送信側クロックで決まる
ID
3

ID
2

ID
1

受信側クロック
データ変化点→同期

タイミング
サンプリング マージン減少中
ポイント

タイミング
マージン小

レセシブ=1

ID
0

タイミング
マージンゼロt

後ろに行くほど送信と受信側のクロックの偏差の影響が大きくなる

ビットスタッフィングがある場合

V

タイミング
リセット

タイミング
リセット
SOF

ID
10

ID
9

ID
8

ID
7

SF

ID
6

ID
5

ID
4

ID
3

ID
2

SF

ID
1

※トータルの通信ビット
数は、増加するID
0t

6 ビット以上同一符号が続かないように、スタッフビットが挿入される

スタッフビットのタイミングで再同期されるので、偏差が累積しない

SF:スタッフビット※スタッフビットは、直前の 5 ビットの反転信号

図 4-8 ビットスタッフィング
スタッフビットが挿入された場合は、全体的なデータビット数が増えます。

10

CAN マルチネットワークボード取扱説明書

株式会社

※ビットスタッフィングの意図
同一符号が続いた場合、データの変化点が存在しません。
CAN は、クロック並走（データ信号とクロック信号を使用してデータ送信を行う）の系ではなく、データ線のみでデー
タを送る方式です。また、1 ビット送信毎に 0 に戻る RTZ(Return to Zero)符号でもなく、電圧レベルの変化点＝デー
タの変化点となる系です。送信側は送信側のクロック信号を使って波形を送出し、受信側は受信側のクロック信号（送信側とは独立）を使ってデータを取り込みます。受信側はデータ変化点を基準にタイミングをリセットする事で、受信側と送信側のクロックの偏差が累積する事がありません（クロック偏差が 5 ビット時間のタイミングでリセットされます）。
※図ではサンプリングポイントをビットの中央付近(50%)に描いていますが、通常は中央より後ろに設定します

1.6. 1 ビットと Tq
1Mbps の時 1 ビット=1us

V

SOF

ID
10

ID
9

ID
8

ID
7

1Tq
CAN クロック=8MHz
SS

TSEG1=4Tq

TSEG2=3Tq

1Tq=125ns, 8Tq で 1 ビットを構成する場合

サンプリングポイント（データの 0（ドミナント）/1（レセシブ）の判定点）
SS: シンクロナイゼーションセグメント=1Tq

図 1-9 1 ビットと Tq の関係
CAN の 1 ビットは複数の Tq（最小時間単位）を組み合わせて構成されます。CAN クロックが 8MHz の場合、8Tq
で 1 ビットを構成すれば、1 ビットが 125ns(=Tq)×8=1us となり、データレートは 1Mbps となります。
（例えば、CAN のクロックを 12.5MHz とした場合、12Tq で 1 ビットを構成した場合、1.04Mbps となり、13Tq で 1 ビットを構成した場合、0.962Mbps となり、1Mbps に設定する事はできません。12.5MHz, 25Tq で 1 ビットを構成すれ
ば、500kbps には設定可能です。）CAN のクロックと何 Tq で 1 ビットを構成するかで、ビットレートが決まります。なお、ビットレートは、通信相手と合わせる必要があります。
実際の設定では、(1)クロックの分周比を決めて 1Tq の値を決める(2)TSEG1 と TSEG2 の値を何 Tq とするかを決める(1),(2)の設定値をマイコンのレジスタに設定します。

CAN マルチネットワークボード取扱説明書

株式会社

11

1.7. CAN の ID
CAN は、データの送信時、ID コードをデータに含める規格となっています。ID の設定は、システムの設計者が決める事ですので、・各ユニット毎に 1 つの ID を重複しないように割り振る
・各ユニット毎に、送信用 ID と受信用 ID を別々に割り振る・データの種類によって ID を割り振る（例えば、ライトは 0x001, ワイパーは 0x002, パワーウィンドウは 0x003 等）
等、色々な手法が考えられます。
送信データパケットには ID が含まれますので、・データ送信を行う際は何らかの ID を付与して送信する必要がある・データを受信する側はデータパケットに含まれる ID を見て「受信しない」「受信する」を決められる（ID でフィルタリン
グができる）という事となります。
データフレームでは、送信ユニットの（自局の）ID。リモートフレームでは、データを返信して欲しいユニットの（相手先の）ID を CAN のフレームに埋め込んで送信します。
ルネサスのマイコン内蔵 CAN モジュールどのタイプのモジュールでも、送信時に任意の ID を設定する事や、特定の ID のデータのみ受信を行う設定ができます。
ID は、標準フォーマットでは、11bit, 拡張フォーマットでは 29bit となっています。
（本キットのサンプルプログラムでは、デフォルトで拡張フォーマットに設定していますが、標準フォーマットへの切り替えができる様にしています。）

12

CAN マルチネットワークボード取扱説明書

株式会社

1.8. 通信時の実際の波形例
下記に、CAN で通信を行った際の、CAN バスと、CAN トランシーバを通した後の波形を示します。（標準フォーマッ
ト、データフレーム）

CAN バスVCCCAN TX

CANH

CANH

CANL

CANL

0
out
in

RXD

レセシブ/ドミナント波形

CAN RXCAN トランシーバ IC
マイコン(RX/RA)

0-VCC のデジタル信号

RXD
CAN トランシーバ IC で、マイコンのデジタル(L/H)レベルに変換された波形
レセシブ

ドミナント
3.5Ｖ
CANH
2.5Ｖ
CANL
1.5Ｖ

CAN バスでは、レセシブ（CANH と CANL が同電位に近い）とドミナント（CANH と CANL の電位差が付く）の波形となりますが、CAN トランシーバの受信回路を通すとマイコンが受けられるデジタル波形に変換されます。

CAN マルチネットワークボード取扱説明書

株式会社

13

2. LIN 通信の概要
2.1. 接続形態
LIN バス（1 線）
VSUP

終端抵抗
(1k)

MASTER
ノード

ID=0x30

SLAVE
ノード

ID=0x31

SLAVE
ノード

ID=0x32

VSUP は
基本的には自動車のバッテリの電源(12~14V)となります

図 2-1 LIN 接続形態

LIN は、1 線の LIN バスのラインに複数のノードがぶら下がる形となり、以下のような形態を取ります。
・LIN バスは 1 線の信号ラインとなる
・1 本の信号線で、データの送受信を行う
・MASTER ノードは、1 つのバスに 1 つのみ
・SLAVE ノードは、1 つのバスに複数存在してよい
・バスの終端は MASTER ノードで行う
・各ノードは重複しない ID を有する

2.2. LIN の物理層
VLIN
VSUP

V

V
t

VLIN
VSUP

t

MASTER
ノード
MASTER が出力

SLAVE(1)ノード

SLAVE(2)ノード

SLAVE(2)が出力t

・誰もデータを出力していない時は LIN バスは H レベル(=VSUP)
・VSUP 振幅の信号
・バスに接続されているデバイスの wired-OR
図 2-2 LIN 物理層

14

CAN マルチネットワークボード取扱説明書

株式会社

LIN バスの信号は、各ノードの出力の wired-OR（いずれかのノードが L を出力すると、LIN バスは L）となります。
そのため、各ノードが自由なタイミングで出力を始めると、信号衝突が起こるため、出力を行うタイミングは MASTERが制御する事となります。CAN と異なり、データの衝突は許されていません。また、LIN バスの振幅は、VSUP 振幅となります。

VLIN

データが無い期間は H レベル'A' = 0x41 = 0b0100 0001

t0
1 0 0 00 0 1 0
1
ST b0 b1 b2 b3 b4 b5 b6 b7 SP
スタートビット=L

データ（8 ビット, LSB ファースト）ストップビット=H

図 2-3 LIN の 1 バイト
LIN で 1 バイト(A=0x41)を送信する場合の波形は上記の様になります。スタートビット=0、ストップビット=1 が付与され、データは LSB（下位ビット）から順に送信されます。このフォーマットは、UART（調歩同期式通信）と同様です。
また、LIN の通信速度は一般的には、~20kbps です。

2.3. LIN のデータパケット
ヘッダ

V

ブレーク

レスポンス

Sync フィールド
PID

data(1)data(2)

Check
SUM

t
ID をエンコード
したもの
13bit 時間の L

データは最大 8 バイト

チェックサム0x55 のデータ

図 2-4 LIN データパケット
LIN のデータパケットは、ヘッダとレスポンスから構成され、以下の特徴を持ちます。
・ヘッダを送出するのは MASTER ノードのみ
・レスポンスは、MASTER か SLAVE ノードが送出する・SLAVE ノードは、ヘッダに含まれる ID が自ノードの ID と一致した場合に、レスポンスを返す事ができる・レスポンスデータは、データとチェックサムで構成される・バスに流れているデータは、どのノードでも受信可能
ヘッダは、ブレーク（13bit 時間（以上）の L）、Sync フィールド（0x55 のデータ）、PID(Protected ID)から構成されます。
CAN マルチネットワークボード取扱説明書

株式会社

15

ブレークは信号開始の合図。Sync フィールドは、受信側に通信速度を同期させる役割（受信側は Sync フィールドのパルス幅を測定して、送信側の通信速度に合わせる事ができる）があり、PID は ID をエンコード（ID にチェックサ
ムを付与したデータ）となっています。
・MASTER レスポンス送信
ヘッダ

V

ブレーク

レスポンス

Sync フィールド
PID

data(1)data(2)

Check
SUM

t
MASTER が送信

MASTER が送信

図 2-5 MASTER レスポンス送信
MASTER レスポンス送信では、ヘッダ、レスポンスとも MASTER ノードが送信を行います。SLAVE ノードでは、このデータを受信可能です（SLAVE 側は受信動作のみ）。
・SLAVE レスポンス送信
ヘッダ

V

ブレーク

レスポンス

Sync フィールド
PID

data(1)data(2)

Check
SUM

t
MASTER が送信

SLAVE が送信

図 2-6 SLAVE レスポンス送信
SLAVE レスポンス送信では、ヘッダは MASTER ノードが出力しますが、レスポンスは SLAVE ノードが送信を行います。SLAVE ノードでは、ヘッダに含まれる PID（ID コードをエンコードしたもの）が自分自身の ID である場合に、レスポンス送信を行います。MASTER 側はレスポンスデータを受信し、SLAVE がどのようなデータを送信したのかを知ることができます。

16

CAN マルチネットワークボード取扱説明書

株式会社

3. UART 通信の概要
3.1. 接続形態

TX

RX

RX

図では 2 本の結線がありますが、どちらか一方のみ使用しても問題ありません

TX

ユニット(1)

V

ユニット(2)VCC
t・信号振幅はマイコンの電源電圧と同じ・TX から RX に信号は一方通行

図 3-1 UART 接続形態
UART は、TX と RX が基本的には 1:1 で接続される形態を取ります。（1 本の TX に複数の RX が接続される形でも問題ありません）
・TX（送信端子）と RX（受信端子）が接続
・データの流れは、TX から RX の方向のみ
・全二重通信（TX からデータ送信中に RX に来たデータを受信）が可能
・通信を行うユニット間で通信速度、通信条件を合わせる必要がある

3.2. UART のデータ波形
データが無い期間は H レベル

Vt0
1 0 0 00 0 1 0
1
ST b0 b1 b2 b3 b4 b5 b6 b7 SP
スタートビット=L

データ（8 ビットが良く使われる
7, 9 ビット等も設定可能）
下位ビットから順番に送信（LSB ファースト）ストップビット=H
1 ビット~2 ビット

上記の波形は'A' = 0x41 = 0b0100 0001を送信した場合

図 3-2 UART の 1 データ

CAN マルチネットワークボード取扱説明書

株式会社

17

データ 8 ビット、パリティなし、ストップビット=1 でデータを構成した場合の波形例を示します。スタートビットは必ず0。ストップビットは必ず 1 となり、10 ビットで 1 データ（1 バイト）を送信します。データは、下位ビット(b0)から上位ビット(b7)の順番で送信されます（これを LSB ファーストといいます）。
データが無い期間は H レベル

V
パリティ対象

0

1

0

0

0

0

0

1

0

0

1

1
t

ST b0
スタートビット=Lb1

データ（8 ビット）

b2 b3

b4

b5

b6 b7

P SP

SP

パリティ ストップビット
1 ビット =H
2 ビット
偶数(Even)パリティ P=0
奇数(Odd)パリティ P=1
図 3-3 UART の 1 データ（別バージョン）

データ 8 ビット、偶数パリティ、ストップビット=2 でデータを構成した場合の波形例を示します。偶数パリティは、パリ
ティ対象期間の 1 の数が偶数になる様にパリティビットが付与されます（上例では、パリティ=0）。奇数パリティの場合
は、b0~b7 までの 1 の数が 2（偶数）なので、パリティビットは 1 となります。（その場合、パリティ対象期間中の 1 の数が奇数(3)となる。）
パリティはエラー検出に使用され、有効にした場合はパリティビットが合っていないと受信側で受信エラーの検出が行えます。上記例では、1 データ（1 バイト）送信するのに、12 ビットとなります。

18

CAN マルチネットワークボード取扱説明書

株式会社

3.3. UART の通信速度
Vt
1 ビット時間104.2us→9,600bps

Vt
1 ビット時間
52.1us→19,200bps
図 3-4 通信速度

通信速度は、1 秒間に何ビット送信するかで表します。1 秒間に 9,600 ビット送信する速度は、9,600bps。
9,600bps の場合、1 ビットあたり 104.2us。10 ビット（1 文字）送信で、約 1.04ms 掛ります。
9,600bps、19,200bps, 38,400bps, 57,600bps, 115,200bps 等が良く使用される通信速度です。通信速度は、送信側と受信側で同じ速度に設定を行う必要があります。
UART では、(1)通信速度（9,600bps や 115,200bps 等）(2)データ 8 ビット(3)パリティ（なし、偶数パリティ、奇数パリティ）(4)ストップビット（1 または 2 ビット）の 4 つのパラメータを決めて、通信を行う 2 者で同じ値に設定する必要があり、設定値が異なると文字（データ）化
けが起こります。

CAN マルチネットワークボード取扱説明書

株式会社

19

4. マイコンボード上で実行されるデモプログラム（CAN 通信）
出荷時、マイコンボードにはデモプログラムが書き込まれており、電源を投入すると所定の動作を行います。

接続例

JP1 のジャンパを抜く

JP1 にジャンパを挿す
CAN 通信ケーブル

HSB_CAN_MULTI_1
CAN 通信ケーブル

HSB_CAN_MULTI_2
JP1 にジャンパを挿す
CAN 通信ケーブル

JP5 にジャンパを挿す

USB-miniB

HSB_CAN_MULTI_3

HSB_CAN_MULTI_4

JP1 のジャンパを抜く

USB-miniB ケーブル
[PC に接続]20

CAN マルチネットワークボード取扱説明書

株式会社

CAN のデータは、
・拡張 ID フォーマット
・データ長 8 バイト固定（8 バイトに満たないデータは 0x00 を付与）
・通信速度 1Mbps
でやり取りを行っています。それぞれ、定義ファイルで上記値を定義しているので、プログラムを再ビルドすれば設定を変える事は可能です。
各ボードには、それぞれ 2 種類の CAN の ID が割り振られています。
ボード
HSB_CAN_MULTI_1
HSB_CAN_MULTI_2
HSB_CAN_MULTI_3
HSB_CAN_MULTI_4

CAN-ID(1)
0x101
0x102
0x103
0x104

CAN-ID(2)
0x201
0x202
0x203
0x204

CAN-ID(1)は、各ボードが自発的に情報を外部に送信する用途で使用しています。
CAN-ID(2)は、各ボードに対する指示、各ボードにデータを出力させる用途で使用しています。

4.1. CAN-ID(1)で出力するデータ
電源を投入すると、各ボードは 500ms に 1 回、CAN バスに対してデータを出力します。
－送信データ－ボード
HSB_CAN_MULTI_1
HSB_CAN_MULTI_2
HSB_CAN_MULTI_3
HSB_CAN_MULTI_4

ID
0x101
0x102
0x103
0x104

RTR
0b0
0b0
0b0
0b0

IDE
0b1
0b1
0b1
0b1

DLC
0b10000b10000b10000b1000data(0x)
XX
YY
XX
YY
XX
XX
00
00

YY
YY
YY
00

00
00
YY
00

00
00
00
00

00
00
00
00

00
00
00
00

00
00
00
00

RTR はデータフレーム／リモートフレーム区分で、ここで出力するのはデータフレーム(0)としています。IDE は標準
ID フォーマット／拡張 ID フォーマット区分で、ここでは拡張 ID フォーマット(1)としています。DLC はデータバイト数で、本プログラムでは、どのデータも 8 バイト固定値としてるので、常に 8(=0b1000)を送信します。data は、8 バイト
で上表で 00 となっている部分は 0x00 固定。XX, YY となっている部分は、ボードの情報を出力しています。
－送信データのデータパケット部分－
ボード
HSB_CAN_MULTI_1

バイト位置
1 バイト目

送信内容
モータ duty 値[%]

2~3 バイト目

モータ回転数[rpm]

CAN マルチネットワークボード取扱説明書

備考-100~100[%]：符号付き 1 バイト
50%→0x32
100%→0x64-50％→0xCE-100%→0x9E
モータの回転数：符号付き 2 バイト
5000rpm→0x1388-5000rpm（逆回転）→0xEC78

株式会社

21

ボード
HSB_CAN_MULTI_2

バイト位置
1 バイト目

送信内容
LCD の表示内容

HSB_CAN_MULTI_2

2~3 バイト目

マトリックスキーの情報

HSB_CAN_MULTI_3

1~2 バイト目

明るさセンサの値

2~3 バイト目

温度センサの温度値

1~8 バイト目

0x00 ×8

HSB_CAN_MULTI_4

備考
0x00:HSB_CAN_MULTI_1~4 の情報を表示（5 秒毎にページ切り替え）
0x01: HSB_CAN_MULTI_1~2 の情報を表示
0x02: HSB_CAN_MULTI_3~4 の情報を表示
0x03: 外部から送信されたメッセージを表示
0~9, CL, EN の キ ー （ 12 キ ー ） を 、 12bit+ 上 位
4bit=0 の 16bit（2 バイト）で送信
押している場合は 1(*1)
0~4095 の A/D 変換結果を 2 バイトで送信(0x0000~0x0FFF)※RL78/F15 の場合は 0~1023(0x0000~0x03FF)
温度（摂氏）値の 100 倍を 2 バイトで送信
23.5℃の場合、100 倍した 2350→0x092E を送信
存在確認のための送信

HSB_CAN_MULTI_4 は、送信データは 0x00×8 となりますが、これはボードがネットワーク上に存在している存在確認のために送っています。（他のボードからは、ネットワーク上の HSB_CAN_MULTI_4 が接続されている事が認識できます。）

(*1)
bit
KEY
data(0b)

15

14

13

12

0

0

0

0

11
CL
0/1

10
EN
0/1

9
9
0/1

8
8
0/1

7
7
0/1

6
6
0/1

5
5
0/1

4
4
0/1

3
3
0/1

2
2
0/1

1
1
0/1

0
0
0/1

例えば、キーの 0 とキーの 2 を押している時は、0x0005 を送信する

4.2. CAN-ID(2)でやり取りされるデータ
CAN-ID(2)は、ボードに対する指示とボード対するデータ出力要求に使用されます。
各ボードは、CAN-ID(2)でデータフレームを受信した場合、自分自身のボードに対する指示であると認識します。データパケットに含まれる内容に従い動作します。

CAN-ID(2)でリモートフレームを受信した場合は、リモートフレームに応答する形で、各種データを出力します。リモートフレームは、外部から当該ボードに対し、データを出力する様に要求するコマンドとして作用します。

4.2.1. データフレーム（外部からの指示）－受信データ－ボード
HSB_CAN_MULTI_1
HSB_CAN_MULTI_2
HSB_CAN_MULTI_3

ID
0x201
0x202
0x203

RTR
0b0
0b0
0b0

IDE
0b1
0b1
0b1

DLC
0b10000b10000b1000data(0x)
XX
YY
XX
YY
XX
YY

00
YY
YY

00
YY
YY

00
YY
YY

HSB_CAN_MULTI_4 は、CAN-ID(2)=0x204 のデータフレームを受け取っても無反応です。
22

CAN マルチネットワークボード取扱説明書

株式会社

00
YY
YY

00
00
YY

00
00
YY

XX の部分はコマンド（1 バイト）、YY の部分にはデータが入ります。
－受信データのデータパケット部分－
ボード
HSB_CAN_MULTI_1

ボード
HSB_CAN_MULTI_2

HSB_CAN_MULTI_3

1 バイト目（コマンド）
0x01

2 バイト目~備考

YY -- -- -- -- -- -- --モータの duty 変更コマンド
2 バイト目の数値を現在の duty に反映させる
3~8 バイト目は未使用（どのようなデータを受け取っても無関係）

1 バイト目（コマンド）
0x02

2 バイト目~備考

YY -- -- -- -- -- --0ｘ03

YY ZZ ZZ ZZ ZZ -- --0x04-- -- -- -- -- -- --0x05

YY YY YY -- -- -- --0x06

YY YY YY ZZ ZZ ZZ ZZ

0x07-- -- -- -- -- -- --0x08

YY -- -- -- -- -- --LCD の情報表示内容変更コマンド
2 バイト目の値で、表示内容を変更
YY=0: HSB_CAN_MULTI1 ~4 の情報を 5 秒毎に 2 ページに分けて表示
YY=1: HSB_CAN_MULTI1~2 の情報を表示
YY=2: HSB_CAN_MULTI3~4 の情報を表示
YY=3: 外部から送信されたデータを表示
3~8 バイト目は未使用
LCD に表示するデータを受信
16 桁×2 行のデータを 8 分割して、4 バイトずつ受信
YY=0~7: LCD のページ番号
ZZ ZZ ZZ ZZ: 表示させるデータ（1 回の CAN パケット
で 4 バイト）
7~8 バイト目は未使用
センサ値読み出しコマンド
リモートフレーム応答（後述）で、センサ値を送信する
2~8 バイト目は未使用
SPI フラッシュ読み出しコマンド
adr=YYYYYY のデータをリモートフレーム応答で送信
5~8 バイト目は未使用
SPI フラシュ書き込みコマンド
addr=YYYYYY に ZZ ZZ ZZ ZZ（4 バイト）のデータを書き込む
SPI フラッシュ消去コマンド
SPI フラッシュの全消去を行う
2~8 バイト目は未使用
SPI フラッシュ記録モード設定
YY=0: センサデータを SPI フラッシュに記録停止
YY=1: センサデータを SPI フラッシュに記録開始
3~8 バイト目は未使用

例えば、ID=0x202、data=0x02 0x01 0x00 0x00 0x00 0x00 0x00 0x00 というパケットを CAN バスに流した場
合、HSB_CAN_MULTI_2 のボードが自分自身への指令であると認識して、LCD の表示内容を変更します。その他、上表のコマンドに対して、各ボードは指令を受け付けます。

CAN マルチネットワークボード取扱説明書

株式会社

23

操作例として、HSB_CAN_MULTI_2 の LCD ディスプレイに"ABCDEFGHIJKLMNOP""abcdefghijklmnop"と表示させる場合の、CAN バスに流すデータを示します。
ID
0x202
0x202
0x202
0x202
0x202
0x202
0x202
0x202
0x202

RTR
0b0
0b0
0b0
0b0
0b0
0b0
0b0
0b0
0b0

IDE
0b1
0b1
0b1
0b1
0b1
0b1
0b1
0b1
0b1

DLC
0b10000b10000b10000b10000b10000b10000b10000b10000b1000data(0x)
02
03
03
00
03
01
03
02
03
03
03
04
03
05
03
06
03
07

00
42
45
49
4D
61
65
69
6D

00
42
46
4A
4E
62
66
6A
6E

00
43
47
4B
4F
63
67
6B
6F

00
44
48
4C
50
64
68
6C
70

00
00
00
00
00
00
00
00
00

00
00
00
00
00
00
00
00
00

動作
LCD を外部データ表示に切り替え"ABCD"を送信（ページ 0）"EFGH"を送信（ページ 1）"IJKL"を送信（ページ 2）"MNOP"を送信（ページ 3）"abcd"を送信（ページ 4）"efgh"を送信（ページ 5）"ijkl"を送信（ページ 6）"mnop"を送信（ページ 7）

16 桁×2 行の全データを送信、表示させるためには、合計 9 パケットの送信が必要です。
（16 行×2 桁を 8 つのページに区切っていますので、表示を変えたい部分のデータのみ送信する事も可能。）
LCD に表示されるメッセージ
page0

page1

page2

page3

ABCDEFGHIJKLMNOP
abcdefghijklmnop
page4

24

page5

page6

page7

CAN マルチネットワークボード取扱説明書

株式会社

4.2.2. リモートフレーム（外部からデータを出力する様に要求）－受信データ－ボード
HSB_CAN_MULTI_1
HSB_CAN_MULTI_2
HSB_CAN_MULTI_3
HSB_CAN_MULTI_4

ID
0x201
0x202
0x203
0x204

RTR
0b1
0b1
0b1
0b1

IDE
0b1
0b1
0b1
0b1

DLC
0b10000b10000b10000b1000

リモートフレームの場合、CAN のパケットの RTR の部分が 1 となり、データフィールドはなくなります。DLC の値(0b1000=8)が、送って欲しいデータバイト数になります（DLC の値は定義値で 8 バイト固定です）。
HSB_CAN_MULTI_1~ HSB_CAN_MULTI_4 の各ボードは、リモートフレーム要求を受け取った際、データの返送（応答）を行います。
－返送データ－ボード
HSB_CAN_MULTI_1
HSB_CAN_MULTI_2
HSB_CAN_MULTI_3
HSB_CAN_MULTI_4

ID
0x201
0x202
0x203
0x204

RTR
0b0
0b0
0b0
0b0

IDE
0b1
0b1
0b1
0b1

DLC
0b10000b10000b10000b1000data(0x)
XX
YY
XX
YY
YY
YY
00
00

YY
YY
YY
00

00
00
YY
00

00
00
YY
00

00
00
YY
00

00
00
YY
00

00
00
YY
00

ID はリモートフレーム要求と同じ ID を使用します。リモートフレーム要求に対する応答は、データフレームとなるので、RTR=0 です。
HSB_CAN_MULTI_1, HSB_CAN_MULTI_2, HSB_CAN_MULTI_4 に関しては、4.1 記載のデータと同じものを送信します。
HSB_CAN_MULTI_3 は、電源投入後や、「センサ値読み出しコマンド」の後は、4.1 記載のデータと同じものを送信します。「SPI フラッシュ読み出しコマンド」の後は、SPI フラッシュに書き込まれているデータを送信します。
例えば SPI フラッシュに下記のデータが書き込まれているとします。
addr
0x0
0x10
0x20

data
00
01
10
11
20
21

ID
0x203

RTR
0b0

IDE
0b1

DLC
0b1000

0x203
0x203
0x203
0x203
0x203
0x203

0b1
0b0
0b1
0b0
0b1
0b0

0b1
0b1
0b1
0b1
0b1
0b1

0b10000b10000b10000b10000b10000b1000

02
12
22

03
13
23

04
14
24

05
15
25

06
16
26

07
17
27

08
18
28

09
19
29

0A
1A
2A

0B
1B
2B

data(0x)
05
00

00

10

00

00

00

00

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

1E

1F

20

21

22

23

24

25

26

27

0C
1C
2C

0D
1D
2D

0E
1E
2E

0F
1F
2F

動作
SPI フラッシュ読み出しコマンド
addr=0x000010
SPI フラッシュ読み出しデータ要求
0x10~17 のデータを送信
SPI フラッシュ読み出しデータ要求
0x18~1F のデータを送信
SPI フラッシュ読み出しデータ要求
0x20~27 のデータを送信※太字は HSB_CAN_MULTI_3 以外からのパケット、太字以外は HSB_CAN_MULTI_3 からの送信
CAN マルチネットワークボード取扱説明書

株式会社

25

SPI フラッシュの読み出しは、SPI フラッシュ読み出しコマンドでアドレスを指定し読み出しを行った場合、読み出しア
ドレスは自動的にインクリメントされる仕様です。（連続したアドレスの読み出しを行う場合は、2 回目以降は、SPI フラ
ッシュ読み出しコマンドを送る必要はありません。）
SPI フラッシュに対しての書き込みコマンドがあり、書き込みも可能ですが、書き込みは消去後未書き込みの領域に対してのみ有効です。（データの上書きはできません）
SPI フラッシュの消去コマンドを送った場合、2Mbit(256kB)の全領域が消去（データとしては 0xFF が読める）状態となります。
SPI フラッシュの記録開始コマンドを送った場合、最初に SPI フラッシュの全消去を行った後、SPI フラッシュの 0 番
地から、センサデータの書き込みを開始します。
addr
0x0
0x10
0x20

data
XX
XX
XX
XX
FF
FF

YY
YY
FF

YY
YY
FF

XX
XX
FF

XX
XX
FF

YY
YY
FF

YY
YY
FF

XX
FF
FF

XX
FF
FF

YY
FF
FF

YY
FF
FF

センサデータ書き込み後の SPI フラッシュは上記の様になり、1 回の記録でXX XX: 明るさセンサの A/D 変換値（0~4095)
YY YY: 温度センサの温度値を 100 倍した値の 4 バイトの書き込みが行われます。書き込みは、1 秒毎（初期値）に行われます。

26

CAN マルチネットワークボード取扱説明書

株式会社

XX
FF
FF

XX
FF
FF

YY
FF
FF

YY
FF
FF

5. マイコンボード上で実行されるデモプログラム（LIN 通信）

JP5 にジャンパを挿す

USB-miniB ケーブル
[PC に接続]DIP-SW:OFF
USB-miniB

LIN 通信ケーブル（HSB_LIN_COMM に付属）

HSB_LIN_COMM
JP1 のジャンパを抜く

JP2 のジャンパを抜く

HSB_CAN_MULTI_4

JP2 にジャンパを挿す

JP6 にジャンパを挿す
JP8 にジャンパを挿す

LIN-ID=0x30(MASTER)

LIN-ID=0x31(SLAVE)

LIN のデータは、・データ 8 バイト（8 バイトに満たないデータは 0x00 を付与）
・通信速度 9,600bps
でやり取りを行っています。それぞれ、定義ファイルで上記値を定義しているので、プログラムを再ビルドすれば設定を変える事は可能です。
LIN の ID は、ボードを MASTER に指定した場合は、0x30。SLAVE に設定した場合は、0x31~0x34 の ID が振られる様になっています。
HSB_CAN_MULTI_4（JP6 をショートに設定し、MASTER モードで動作）：ID=0x30
HSB_LIN_COMM（JP1 をオープンに設定し、SLAVE モードで動作）
DIP-SW1
OFF
OFF
ON
ON

DIP-SW2
OFF
ON
OFF
ON

LIN-ID
0x31
0x32
0x33
0x34

DIP-SW は起動時に読み込み。起動後は、設定を変えても LIN-ID は変わりません。
※HSB_LIN_COMM を複数台接続する場合は、ID が重複しない様にしてください
CAN マルチネットワークボード取扱説明書

株式会社

27

HSB_CAN_MULTI_4 を MASTER モードで動作させた場合、LIN の動作はタイマモードとなり、一定時間(100ms)
毎に、下記(1)~(5)を繰り返す動作となります。（100ms 毎にヘッダ送信、500ms に１回 MASTER レスポンス送信）－LIN パケット－

(1)
(2)

ヘッダ
ヘッダ送信元HSB_CAN_MULTI_4
HSB_CAN_MULTI_4

ID
0x30
0x31

(3)
(4)
(5)

HSB_CAN_MULTI_4
HSB_CAN_MULTI_4
HSB_CAN_MULTI_4

0x32
0x33
0x34

レスポンス
レスポンス送信元
HSB_CAN_MULTI_4
HSB_LIN_COMM(ID=0x31)

data(0x)
00
00
SS
SS

00
XX

00
YY

00
ZZ

00
ZZ

00
00

00
00

100ms 毎に(1)→(2)→(3)→(4)→(5)→(1)…を繰り返す動作です。（上表は、ID=0x32~0x34 のデバイスが存在しない場合。）
HSB_CAN_MULTI_4(MASTER)が MASTER レスポンス送信で送信するデータは、初期値は 0x00×8。後述のUART 経由でのコマンド操作により、任意のデータが送信可能です。
HSB_LIN_COMM(SLAVE)は、ヘッダに含まれる ID が自分自身の ID と一致した場合、レスポンス送信を行います。
－HSB_LIN_COMM が送信するデータ－
1~2 バイト目
3 バイト目SS SS
XX

4 バイト目YY

5~6 バイト目
7~8 バイト目

ZZ ZZ
00 00

内容
100ms 毎にインクリメントされるシリアル番号を送信
DIP-SW の状態（下位 4 ビットが有効データ、上位 4bit は 0）
(ON の時 1, OFF の時 0）（SW が OFF, OFF, ON, ON の時、0x03）
現在の LED の状態（下位 4 ビットが有効データ、上位 4bit は LED 状態保持変数の値）（点灯時 1, 消灯時 0）（LED が OFF, OFF, ON, ON の時、0x?3）
明るさセンサーの A/D 変換値(0~4095)
0x00 固定

ID=0x32 のデバイスが、LIN バス上に存在しない場合は、ヘッダ送信は行われますが、レスポンスを返すデバイスが存在しない（ヘッダ送信のみ行われる）状態となります。
※CAN はタイムスタンプを見れば、（送信されるデータが同一でも）新しいパケットを受信した事が判りますが、LIN の場合は、同一データが送信されている場合、新しいデータかどうかを見分ける手段がないため、データが送られ続けている事が判る様に、データパケットにシリアル番号を埋め込んでいます
HSB_LIN_COMM は、SLAVE 動作時 MASTER レスポンスデータ（MASTER が送信したデータ）を、LED の状態に反映させるようにしています。
（※HSB_LIN_COMM が MASTER モードで動作している時は、SLAVE レスポンスデータを LED に状態に反映）

28

CAN マルチネットワークボード取扱説明書

株式会社

－HSB_LIN_COMM が受信して動作に影響を与えるデータ－
3 バイト目内容
現在の LED の状態に反映（下位 4 ビットが有効データ、上位 4bit は無視）

XX

例えば、MASTER 側から送信するデータの、3 バイト目を 0x0F に設定した場合、

(1)

ヘッダ
ヘッダ送信元HSB_CAN_MULTI_4

レスポンス
レスポンス送信元
HSB_CAN_MULTI_4

ID
0x30

data(0x)
00
00

0F

00

00

00

00

00

HSB_LIN_COMM の LED1~LED4 は全点灯となります。3 バイト目を 0x03 とした場合、LED3~LED4（下位 2 ビット）が点灯となります。
※なお、デフォルトはタイマモードで動作しますが、後述の UART のコマンドによりタイマ動作を止める事が可能です[参考]3 バイト目が LED に反映される理由
HSB_LIN_COMM ボードを MASTER 設定にした場合、レスポンス
レスポンス送信元
HSB_LIN_COMM(ID=0x31)

data(0x)
SS
SS

XX

YY

ZZ

ZZ

00

00

SS SS: シリアル NO
XX: DIP-SW の状態
YY: LED の状態
ZZ ZZ: 明るさセンサの情報
3 バイト目に送られるデータは、DIP-SW の状態となります。HSB_LIN_COMM を 2 台、MASTER と SLAVE で接続した場合、ボードの LED は接続相手先の DIP-SW の状態と同じになります。
（HSB_LIN_COMM を 2 台接続する場合、かつ HSB_CAN_MULTI_4 を接続しない場合は、別途 LIN 電源(VSUP)の印加が必要です。）

CAN マルチネットワークボード取扱説明書

株式会社

29

6. マイコンボード上で実行されるデモプログラム（UART 通信）

USB-miniB ケーブル
[PC に接続]

USB-miniB

HSB_CAN_MULTI_4

HSB_CAN_MULTI_4 には、PC と通信する USB-Serial ポートがあります。PC と接続し PC 上でデモプログラムを実行した場合、PC と UART(SCI)で通信を行い、ボード(HSB_CAN_MULTI_4)に対する指示を出したり、CAN バスのデータを UART 経由で PC に送信する事ができます。
UART(SCI)は、通信速度 115,200bps, データ 8bit、パリティなし、ストップビット 1 ビットのフォーマットです。
UART 通信は、大きく分けると、「(1)PC から HSB_CAN_MULTI_4」への通信、「(2)HSB_CAN_MULTI_4 からPC」への通信に 2 分されます。
(1)PC から HSB_CAN_MULTI_4 に対する指令(1-1)HSB_CAN_MULTI_4 が保持しているデータを PC に送信させる指令(1-2)HSB_CAN_MULTI_4 を経由して CAN バスにデータを流す指令(1-3)HSB_CAN_MULTI_4 の動作を指示する指令(2)HSB_CAN_MULTI_4 から PC に対してデータを送信(2-1)HSB_CAN_MULTI_4 が保持しているデータを PC に送信(2-2)CAN バスに流れているデータを PC に転送(2-3)LIN バスに流れているデータを PC に転送（LIN SCI モードの場合）

30

CAN マルチネットワークボード取扱説明書

株式会社

(1)の PC から HSB_CAN_MULTI_4 に対する指令は、3 種類の指令（コマンド）で構成されます。

(1-1)HSB_CAN_MULTI_4 が保持しているデータを PC に送信させる指令
コマンド
ヘッダ
&

終端
コード
なし

data
なし

動作
データ出力コマンド

PC から、HSB_CAN_MULTI_4 に対して、"&"を送ると、HSB_CAN_MULTI_4 は自身が保持しているデータを PCに返送します。返送するデータのフォーマットは、(2-1)で示します。

(1-2)HSB_CAN_MULTI_4 を経由して CAN バスにデータを流す指令
コマンド
ヘッダ
$

data
CAN-ID(8bytes)

RTR(2bytes)

CAN-DATA(16bytes)

終端
コード
¥r¥n

動作
CAN バスに指定されたデータを流す

本コマンドを用いると、PC から HSB_CAN_MULTI_4 を経由して CAN バスに対して任意のデータ（データフレー
ム、またはリモートフレーム）を送信する事が可能。
－実際のパケット例－
コマンド
ヘッダ
$

data

コマンド
ヘッダ
$

data

00000201

0000020100

0102030405060708

01

終端
コード
¥r¥n

動作

終端
コード
¥r¥n

動作

CAN-ID 0x201 に対して、0x0102030405060708 のデータフレームを送信する

CAN-ID 0x201 に対して、リモートフレームを送信す
る

・PC から送信するデータはバイナリではなく ASCII（1byte を 2 文字で表す）
・コマンドの終端は¥r¥n(0x0d 0x0a)（¥r のみ, ¥n のみでも可）・有効なコマンドは全部で 80 文字まで

(1-3)HSB_CAN_MULTI_4 の動作を指示する指令
コマンド
ヘッダ
%

data
COM
(2bytes)

data

終端
コード
¥r¥n

動作

HSB_CAN_MULTI_4 のボードの動作を PC から指示、COM はコマンド種。

CAN マルチネットワークボード取扱説明書

株式会社

31

－実際のパケット例－
コマンド
ヘッダ
%

data
01

0102030405060708

終端
コード
¥r¥n

動作
LIN のレスポンスデータ設定

LIN の MASTER/SLAVE モードで送信するデータを設定するコマンドです。
コマンド
ヘッダ
%

data

コマンド
ヘッダ
%

data

02

02

動作

00

終端
コード
¥r¥n

動作

01

終端
コード
¥r¥n

LIN をタイマ動作モードに設定

LIN を SCI 動作モードに設定

LIN をタイマ動作モード（起動時のデフォルト）に設定した場合（かつ、HSB_CAN_MULTI_4 を LIN MASTER モードに設定している場合）、100ms 毎に LIN ID=0x30~0x34 でヘッダ送信を行います。
LIN 動作モードを、SCI 動作モードにした場合、ヘッダ送信は、UART(SCI)経由でコマンドが来た（下記のCOM=03, COM=04 のコマンド）タイミングで行われます。
コマンド
ヘッダ
%

終端
コード
¥r¥n

data
03

動作
MASTER ヘッダ・レスポンス送信

HSB_CAN_MULTI_4 を LIN MASTER モードに設定している場合、MASTER ヘッダ/レスポンス送信（ID=0x30
で、ヘッダと前出の（COM=01 の）レスポンスデータ設定コマンドで設定したデータを送信）します。
コマンド
ヘッダ
%

data
04

31
(LIN-ID)

終端
コード
¥r¥n

動作
SLAVE ヘッダ送信

HSB_CAN_MULTI_4 を LIN MASTER モードに設定している場合、SLAVE ヘッダ送信（ID=0x31 でヘッダ送信）を行います。（ID=0x31 の SLAVE デバイスに対してレスポンスデータを要求する動作）
ID は、コマンドパケットに含まれるので、任意の LIN-ID のデバイスに対して、ヘッダ送信（レスポンスデータの要求）が行えます。
・PC から送信するデータはバイナリではなく ASCII（1byte を 2 文字で表す）
・コマンドの終端は¥r¥n(0x0d 0x0a)（¥r のみ, ¥n のみでも可）・有効なコマンドは全部で 80 文字まで
は、(1-3)でも共通です。

32

CAN マルチネットワークボード取扱説明書

株式会社

(2-1)HSB_CAN_MULTI_4 が保持しているデータを PC に送信
PC から HSB_CAN_MULTI_4 に"&"コマンドを送ると、HSB_CAN_MULTI_4 は以下のデータを返送します。
データ
ヘッダ
:

終端
コード
¥r¥n

data
START

内容
一連のデータの開始

一連のデータの開始を示す":START"が最初に送信されます。その後、データが続きます。
データ
ヘッダ
#

data
TYPE

data

終端
コード
¥r¥n

内容

#の後、データ種(TYPE)を 2 文字で示し、その後データが続く。
－実際のパケット例－
データ
ヘッダ
#

data
01

1111

終端
コード
¥r¥n

内容
ボード接続状態

HSB_CAN_MULTI_1~HSB_CAN_MULTI_4 の 4 台のボードが接続されている時は、1 1 1 1 をデータとして返す。HSB_CAN_MULTI_1, HSB_CAN_MULTI_4 の 2 台のボードが接続されている時は、1 0 0 1 をデータとして返す。（0:ボード未接続, 1:ボード接続）
データ
ヘッダ
#

data
02

32

終端
コード
¥r¥n

内容
HSB_CAN_MULTI_1 のモータ duty 値

HSB_CAN_MULTI_1 の現在のモータ duty 値（HSB_CAN_MULTI_1 が CAN ID=0x101 で発信している情報）。
duty=50%の時、50=0x32→ASCII で"32"を返す。
データは、ASCII コード(0~F)で、1byte が 2 文字で送られてきます。
データ
ヘッダ
#

data
03

1388

終端
コード
¥r¥n

内容
HSB_CAN_MULTI_1 のモータ duty 値

HSB_CAN_MULTI_1 の現在のモータの回転数（HSB_CAN_MULTI_1 が CAN ID=0x101 で発信している情報）。回転数 5000[rpm]のとき、5000=0x1388→ASCII で"1388"を返す。
データ
ヘッダ
#

data
04

0001

終端
コード
¥r¥n

CAN マルチネットワークボード取扱説明書

内容
HSB_CAN_MULTI_2 のマトリックスキー情報

株式会社

33

HSB_CAN_MULTI_2 の現在押されているマトリックスキーの情報（HSB_CAN_MULTI_2 が CAN ID=0x102 で発信している情報）。0 のキーを押している際、0x0001→ASCII で"0001"を返す。
データ
ヘッダ
#

終端
コード
¥r¥n

data
05

0123

内容
HSB_CAN_MULTI_3 の明るさセンサの情報

HSB_CAN_MULTI_3 の明るさセンサの情報（HSB_CAN_MULTI_3 が CAN ID=0x103 で発信している情報）。
12 ビットの A/D 変換値(0~0xFFF)、0x0123 の時→ASCII で"0123"を返す。
データ
ヘッダ
#

終端
コード
¥r¥n

data
06

092E

内容
HSB_CAN_MULTI_3 の温度センサの情報

HSB_CAN_MULTI_3 の温度センサの情報（HSB_CAN_MULTI_3 が CAN ID=0x103 で発信している情報）。摂
氏温度を 100 倍した値、23.5℃の時 2350→0x092E の時→ASCII で"092E"を返す。
データ TYPE=02~06 は、HSB_CAN_MULTI_1~ HSB_CAN_MULTI_3 が、CAN-ID=0x101~0x103 で出力しているデータで、データ内容は 4.1 「CAN-ID(1)で出力するデータ」と同じものが UART で送られてきます。
データ
ヘッダ
#

data
07

31
(LIN-ID)

0102030405060708(data)

終端
コード
¥r¥n

内容
HSB_CAN_MULTI_4 が受信している LIN のデータ（ID 1byte, データ 8bytes）

TYPE=07 は HSB_CAN_MULTI_4 が受信している LIN データを返します。
31 : LIN-ID（1 バイト）
0102030405060708 : LIN データ（8 バイト）
トータル 9 バイトのデータが ASCII で 18 文字のデータとして送られてきます。
LIN データは、HSB_CAN_MULTI_4 がデータを受信した際に、リングバッファに保存します。
HSB_CAN_MULTI_4 が、UART で&コマンドを受け取った際、リングバッファに保存されているデータを送信します。
複数のデータが保存されている場合は、保存されているすべてのデータを複数行に分けて送信します。
（※リングバッファは、デフォルトでは 15 個までのデータを保存可能。読み出しされなかったデータは、古いものから上書きされます。）
データ
ヘッダ
:

終端
コード
¥r¥n

data
END

内容
一連のデータの終了

一連のデータの終了を示す":END"が最後に送信されます。

34

CAN マルチネットワークボード取扱説明書

株式会社

(2-2)CAN バスに流れているデータを PC に転送
CAN バスに流れているデータで、ID=0x201~0x203 のデータ(*1)を UART に転送します。
データ
ヘッダ
*

data
CAN-ID

RTR

IDE

DLC

data

TS

終端
コード
¥r¥n

内容
CAN のデータパケット－実際のパケット例－
データ
ヘッダ
*

data
00000201

01

01

08

0102030405060708

A123

終端
コード
¥r¥n

内容
CAN のデータパケット

CAN の ID, RTR（データフレーム/リモートフレームを示す）, IDE（標準フォーマット/拡張フォーマットを示す）, DLC（データサイズを示す）, データ（プログラム定義で 8 バイト）, TS（タイムスタンプ、2 バイト）を、ASCII で送信します。
(*1)UART 送信を行うボードを HSB_CAN_MULTI_4 に設定（デフォルト）した場合(2-3)LIN バスに流れているデータを PC に転送（LIN SCI モードの場合）
LIN バスに流れているデータを UART に転送します。
データ
ヘッダ
+

内容

sum

終端
コード
¥r¥n

内容

2A

終端
コード
¥r¥n

data
LIN-IDdata

LIN のデータパケット－実際のパケット例－
データ
ヘッダ
+

data
31

01020304050607

LIN のデータパケット

LIN の ID, データ（プログラム定義で 8 バイト）, チェックサムを ASCII で送信します。
（※HSB_CAN_MULTI_4 の LIN 動作モードが、SCI 通信モードの場合）（LIN 動作モードがタイマモードの場合、"&"コマンドで LIN データの読み出しを行います。SCI 通信モード場合、デー
タ受信を行ったタイミングで転送します。LIN の動作モードは、HSB_CAN_MULTI_DEMO2.exe で行います。）
UART 通信に関しては、基本的には HSB_CAN_MULTI_4 のボードが行います。但し、ネットワーク構成に
HSB_CAN_MULTI_4 が含まれない場合は、他のボードに UART 通信機能を担わせる事が可能です。
（いくつか制約条件が付くのと、プログラムの再ビルド、ボードへの書き込みが必要です。）

CAN マルチネットワークボード取扱説明書

株式会社

35

7. PC 向けデモプログラム
PC 向けのデモプログラムは 2 種類用意してあります。

7.1. HSB_CAN_MULTI_DEMO.exe

36

CAN マルチネットワークボード取扱説明書

株式会社

HSB_CAN_MULTI_DEMO.exe は、・ボードの接続状況の表示
・CAN バスに流れているデータを表示（HSB_CAN_MULTI_1~HSB_CAN_MULTI_3 が出力しているデータ）(*1)
・LIN バス上に流れているデータを表示（ID=0x31~ID=0x34 のデータ）
・HSB_CAN_MULTI_1 のモータ回転デューティ比の設定
・HSB_CAN_MULTI_2 の LCD 表示設定
・LIN バス上に送信するデータを設定(ID=0x30)が行えます。
(*1)は、ID=0x10X でボードが 500ms 毎に送信したデータを、HSB_CAN_MULTI_4 が受信。PC から"&"コマンドを送り、HSB_CAN_MULTI_4 に UART で情報を出力させてモニタリングを行っています。
ボード同士が自律的に交換しているデータを拾ってきて表示させる。また、ボードに対して指示を出せる内容になっています。（情報をモニタリングするためのツールです。）
起動すると、

COM ポート選択のプルダウンメニューが左上にありますので、HSB_CAN_MULTI_4 の USB-Serial ポート番号を選択して、「COM ポートオープン」のボタンを押してください。
HSB_CAN_MULTI_4 の USB-Serial ポート番号が不明な場合は、デバイスマネージャーを起動して、ポート(COM と LPT)の欄の、Prolific PL2303GC USB Serial COM Port の COM?の番号を調べてください。

CAN マルチネットワークボード取扱説明書

株式会社

37

COM ポートオープンのボタンを押して、COM ポートが開けた場合、COM?をオープンしました、という表示が出ます。
－本アプリケーションソフトの表示、ボタンの役割－

(1)

(7)

(5)

(8)
(6)
(11)

(2)

(10)

(9)

(12)

(3)
(13)
(14)

(4)
(15)

(19)

(16)
(17)
(18)

(20)

(1)~(4)ネットワーク上にボードが存在しているかどうかの表示(5)HSB_CAN_MULTI_1 の現在のモータ duty 設定値(6)HSB_CAN_MULTI_1 の現在のモータ回転数(7)HSB_CAN_MULTI_1 の duty 値を変える場合、数値を入力するボックス（-100~100 の値が入力可能）(8)(7)の設定値をボードに送信するボタン(9)HSB_CAN_MULTI_2 のマトリックスキーの状態(10)HSB_CAN_MULTI_2 の LCD に表示するメッセージ（16×2 行）を入力するボックス(11)HSB_CAN_MULTI_2 の表示パターンを設定するラジオボタン(12)HSB_CAN_MULTI_2 にデータを送信するボタン
38

CAN マルチネットワークボード取扱説明書

株式会社

(13)HSB_CAN_MULTI_3 の明るさセンサの値(14)HSB_CAN_MULTI_3 の温度センサの値(15)LIN ID=0x31 で受信したデータ(16)LIN ID=0x32 で受信したデータ(17)LIN ID=0x33 で受信したデータ(18)LIN ID=0x34 で受信したデータ(19)HSB_CAN_MULTI_4(LIN MASTER, ID=0x30)が送信するデータを設定するボックス
0~9,A~F(a~f)の文字を 16 文字まで（8 バイトデータ）の入力が可能(20)(19)で入力したデータを送信するボタン
本アプリケーションは、モニタリングツールの位置付けなので、HSB_CAN_MULTI_2 のキーマトリックスのキーを押したり、HSB_CAN_MULTI_3 の明るさセンサに手をかざしたりした場合、表示されている値がリアルタイムに（多少タイムラグがありますが）変わります。
(15)~(18)の LIN データは、HSB_LIN_COMM がつながっていれば、表示データが更新されていくはずです。
送信ボタンを押した際は、HSB_CAN_MULTI_4 経由で各ボードに対してデータが送られますので、
HSB_CAN_MULTI_1 のモータ回転数（duty）や、HSB_CAN_MULTI_2 の LCD 表示メッセージ等を変更する事が
できます。
－操作例－
・HSB_CAN_MULTI_1 に対する指示

duty を設定
送信モータが回転し回転数が上がる

duty 値を設定して、送信ボタンを押すと、・HSB_CAN_MULTI_1 のモータが回転・回転数が取得され、表示に反映
される動作となります。

CAN マルチネットワークボード取扱説明書

株式会社

39

・HSB_CAN_MULTI_2 に対する指示

表示文字列を入力

送信
送信メッセージを選択

LCD に表示されるメッセージ

LCD MESSAGE
123456789ABCDE・HSB_CAN_MULTI_4 に対する指示

3 バイト目に 05 を設定

受信データの 3 バイト目に反映

送信

明るさセンサの値

接続先の HSB_LIN_COMM ボード

DIP-SW は
0b0011=0x03

LED2 と 4 が点灯
0x05=0b0101

40

CAN マルチネットワークボード取扱説明書

株式会社

7.2. HSB_CAN_MULTI_DEMO2.exe

HSB_CAN_MULTI_DEMO2.exe は、・各ボードに対する情報取得の指示（CAN のリモートフレームを使用したデータ返送指示）
・HSB_CAN_MULTI_1 のモータ回転デューティ比の設定
・HSB_CAN_MULTI_2 の LCD 表示設定
・HSB_CAN_MULTI_3 の SPI フラッシュに対する操作

CAN マルチネットワークボード取扱説明書

株式会社

41

・LIN バス上に MASTER レスポンス送信(ID=0x30)
・LIN バスにヘッダ送信（レスポンスデータ要求）が行えます。
HSB_CAN_MULTI_DEMO.exe が受動的な動作を行うアプリなのに対して、こちらは能動的な動作をするアプリです。ボードに対してデータを送り、その応答を表示に反映させる動作となります。
起動後、COM ポートをオープンするところは、HSB_CAN_MULTI_DEMO.exe と同じです。

(2)
(1)

(6)
(5)
(3)
(4)
(8)
(12)

(7)

(10)
(9)
(11)
(14)

(17)
(19)

(13)
(15)
(16)
(18)

(21)
(23)

(26)

(22)
(24)

(25)

COM ポートを開いても、何も表示更新は行われません。

42

CAN マルチネットワークボード取扱説明書

(20)

株式会社

(27)

(1)の情報更新を押すと、HSB_CAN_MULTI_4 から CAN-ID=0x0201 のリモートフレームが送信されます。ネット
ワーク上に、HSB_CAN_MULTI_1(ID=0x201)が存在していれば、HSB_CAN_MULTI_1 が ID=0x201 でデータフ
レーム応答を返します。そのデータは、HSB_CAN_MULTI_1 の(2)の欄に表示されます。
また、(2)の data 部分のデータを変換して(3)の duty 値と(4)の回転数が表示されます。
CAN のデータは、以下の項目が表示されます。
CAN-ID 4 バイトデータを ASCII 8 文字で表示
RTR 00:データフレーム, 01:リモートフレーム
IDE 00:標準フォーマット, 01:拡張フォーマット
DLC 08:データ 8 バイト
data CAN のデータパケット（8 バイトデータを ASCII 16 文字で表示）
TS タイムスタンプ 受信時に受信側のマイコンで付与されるタイマ値（2 バイトを ASCII 4 文字で表示）
RTR は、HSB_CAN_MULTI_4 からリモートフレームを送信し、それに対する HSB_CAN_MULTI_1 からの応答を
HSB_CAN_MULTI_4 が受信して、この欄に反映させますので、必ず 00（データフレーム）となります。
IDE は、マイコンボード側のプログラムで拡張フォーマットを指定しているので、01（拡張フォーマット）となります。
DLC は、マイコンボード側のプログラムで、8 バイトとしているので、08（8 バイト）となります。
data は、その都度変わります。
TS は、「情報更新」ボタンを押すたびに別な値となります。（CAN データを受信したタイミングに起因する値）(7)の情報取得を押すと、HSB_CAN_MULTI_4 から CAN-ID=0x0202 のリモートフレームが送信されます。ネット
ワーク上に、HSB_CAN_MULTI_2(ID=0x202)が存在していれば、HSB_CAN_MULTI_2 が ID=0x202 でデータフ
レーム応答を返します。そのデータは、HSB_CAN_MULTI_2 の(8)の欄に表示されます。
また、(8)の data 部分のデータを変換して(9)の押されているキーの値と、現在のボード側の LCD 表示設定が(11)のラジオボタンの選択に反映されます。
(13)の情報取得を押すと、HSB_CAN_MULTI_4 から CAN-ID=0x0203 のリモートフレームが送信されます。ネット
ワーク上に、HSB_CAN_MULTI_3(ID=0x203)が存在していれば、HSB_CAN_MULTI_3 が ID=0x203 でデータフ
レーム応答を返します。そのデータは、HSB_CAN_MULTI_3 の(14)の欄に表示されます。
また、(14)の data 部分のデータを変換して明るさセンサの値が(15)に、温度センサの値が(16)に反映されます。

CAN マルチネットワークボード取扱説明書

株式会社

43

次にボードに対する指示ですが、
HSB_CAN_MULTI_1 の操作

(6)
(5)

(5)に値(-100~100)を設定して、(6)の送信ボタンを押します。

(1)
(3)
(4)

この時点では、CAN データ、(3)(4)の値が更新される事はありません。
次に(1)の情報更新のボタンを押すと、

(3)
(4)

CAN のデータフレームを受信して、(3)(4)のデータが更新されます。
HSB_CAN_MULTI_2 の操作

(12)
(10)

(11)

(11)の「ボード 1-2」を選択して、(12)の送信を押すと、

44

CAN マルチネットワークボード取扱説明書

株式会社

LCD に表示されるメッセージ

1:50,7500
2:7LCD には、HSB_CAN_MULTI_1 と HSB_CAN_MULTI_2 の状態が表示される様になります。
「ボード 3-4」を選択して、送信ボタンを押すと、3:2400,23.5
4:Connected
LCD には、HSB_CAN_MULTI_3 と HSB_CAN_MULTI_4 の状態が表示される様になります。
起動時のデフォルトは、「ボード 1-4 切り替え」で、上記の 2 種類の表示が 5 秒毎に切り替わる動作です。
(10)のボックスにメッセージ（文字列）を入力して、「送信メッセージ」を選択して、送信ボタンを押すと LCD に任意のメッセージを表示させる事ができます。
HSB_CAN_MULTI_3 の操作
(17)
(13)

(19)

(15)
(16)
(18)

(20)

(17)のラジオボタンで、ボードに対してコマンドを送ることができます。
「センサ値読み出し」「送信」「情報取得」を行うと、「情報取得」で受信するデータは明るさセンサと温度センサの値となります。（起動時のデフォルト）

CAN マルチネットワークボード取扱説明書

株式会社

45

(17)
(13)

(19)

(15)
(16)
(18)

(20)

(17)のラジオボタンで、「センサ値記録 ON」「送信」を行うと、明るさセンサと温度センサの値を SPI フラッシュメモリに記録する動作となります。
データは、1 秒間に 1 回記録されますので、多少時間を置いた後で、今度は「センサ値記録 OFF」「送信」を押しま
す。
(17)
(13)

(19)

(15)
(16)
(18)

(20)

次に、
(17)
(13)

(19)

(15)
(16)
(18)

(20)

「SPI フラッシュリード」を選択して「送信」を押します。この状態で、SPI フラッシュの読み出しモードになりましたので、「情報取得」を押します。
HSB_CAN_MULTI_3 が送信するデータは、SPI フラッシュのアドレス 0x0~0x7 のデータです。
（センサデータを送ってきた場合は、data の後半 4 バイトは 0 ですが、この時に送ってきたデータは SPI フラッシュ内のデータなので、後半もデータが入っています。）

46

CAN マルチネットワークボード取扱説明書

株式会社

その後、情報取得のボタンを押していくと、
(17)
(13)

(19)

(15)
(16)
(18)

(20)

data の部分が変化していくはずです。現在、SPI フラッシュの読み出しモードになっているので、情報取得のボタンを押す度に、
アドレス 0x8~0xf
アドレス 0x10~0x17
アドレス 0x18~0x1f…
と、アドレスが 8 バイトインクリメントされたデータを順次取得可能です。

(17)
(13)

(19)

(15)
(16)
(18)

(20)

(18)の SP フラッシュアドレス 100 （0x100 を表す）
(17)は、「SPI フラッシュリード」を選択して、「送信」ボタン。その後、「情報取得」を押すと、アドレス 0x100~0x107のデータを取得可能です。
同様に、
(17)
(13)

(19)

(15)
(16)
(18)

CAN マルチネットワークボード取扱説明書

株式会社

(20)

47

SPI フラッシュアドレス 1000(0x1000)を入力して「送信」「情報取得」の順に操作すると、アドレス 0x1000~0x1007のデータを取得可能です。取得されたデータは、0xFF x8 となっているので、これは SPI フラッシュ消去後の値です。
センサ値記録モードにすると、1 秒に 1 データ（8 バイト）ずつ記録されます。（512 秒間記録すれば、4096 バイト=0x1000 まで記録されるはずです。）
このケースでは、0x100 以降 0x1000 未満のどこかのアドレスまで、データが記録されています。
SPI フラッシュに記録されている全データを取得する場合は、
(17)
(13)

(19)

(15)
(16)
(18)

(20)の「SPI フラッシュ保存」ボタンを押します。

ファイル保存のダイアログが出ますので、ファイル名や保存先を選択して、「保存」してください。

48

CAN マルチネットワークボード取扱説明書

株式会社

(20)

ファイルの保存が終了すると、アプリケーションの上の方に、メッセージが出ます。
※処理時間に関して
PC→HSB_CAN_MULTI_4 に UART でデータ取得指示
HSB_CAN_MULTI_4 から HSB_CAN_MULTI_3 にリモートフレーム送信
HSB_CAN_MULTI_3 がデータフレーム（データフレーム内に SPI フラッシュメモリの情報）送信
HSB_CAN_MULTI_4 から PC に UART でデータ転送という、伝言ゲームみたいなやり取りがあるので、ファイルの保存には、ある程度時間が掛かります（1 時間記録した 3600 点のデータ取得に、約 18 秒掛かります）
出力されたファイルは、CSV 形式になっており、データのシリアル番号、明るさセンサの値、温度センサの値が記録されたものになります。

CAN マルチネットワークボード取扱説明書

株式会社

49

(17)
(13)

(19)

(15)
(16)
(18)

(20)

「SPI フラッシュ消去」「送信」
を行うと、SPI フラッシュの全消去が行えます。

(17)
(13)

(19)

(15)
(16)
(18)

(20)

(17)
(13)

(19)

(15)
(16)
(18)

(20)

「SPI フラッシュリード」SP フラッシュアドレス「0」「送信」「情報取得」
を行うと、アドレス 0x0~0x7のデータが、0xFF となっており、SPI フラッシュが消去されていることが確認できます。
（「センサ値記録 ON」のコマンドを送ると、消去後に書き込みを始めますので、記録前に消去する必要はありません。）

50

CAN マルチネットワークボード取扱説明書

株式会社

HSB_CAN_MULTI_4 に対する操作

(22)

(21)
(23)

(26)
(27)

(24)
(25)

最初に、(26)の「動作モード(SCI)」を押してください。
HSB_CAN_MULTI_4 は、起動後 LIN はタイマモードで動作していますので、本アプリケーションとは無関係に LINのヘッダ送信を行っています。「動作モード(SCI)」のボタンを押すことにより、HSB_CAN_MULTI_4 が本アプリケー
ションで制御される様に変わります。
（「動作モード（タイマ）」は、起動後のタイマモードに戻すボタンです。）

(22)

(21)
(23)

(26)
(27)

(24)
(25)

(22)の送信データ（0~9,A-F の文字を 16 桁で入力…8 バイトデータ）を設定し、(21)の「マスタ送信」のボタンを押すと、HSB_CAN_MULTI_4 から LIN バスに、ID=0x30 で MASTER レスポンス送信を行います。送信されるのは、(22)に設定したデータです。

DIP-SW は
0b0011=0x03

LED2 と 4 が点灯
0x03=0b0011

上記の場合、接続先の HSB_LIN_COMM ボードは、3 バイト目のデータ(0x03)が LED に反映されるはずです。

CAN マルチネットワークボード取扱説明書

株式会社

51

(22)

(21)
(23)

(26)
(27)

(24)
(25)

次に(24)の LIN-ID に「31」（0x31 の意）を入力し、(23)の「スレーブヘッダ送信」を押します。この場合、(25)の受信
LIN データの部分が更新されるはずです。
（data の 3 バイト目は、LIN-ID=0x31 の HSB_LIN_COMM の DIP-SW の状態が反映され、4 バイト目は LED の点
灯状況が反映されるはずです。）
LIN の動作モードを「動作モード(SCI)」にした場合は、(21)(23)のボタンを押したタイミングで、ヘッダ送信が実行されます。なお、LIN バスに、LIN-ID=0x31 以外の ID を持つデバイスが存在する場合は、(24)の LIN-ID に ID 値を入れ、「スレーブヘッダ送信」を行うと、当該デバイスが応答を返すはずです。
HSB_LIN_COMM の LIN-ID を 0x32 に変更。
DIP-SW は
リセット

LIN-ID は
0b0111=0x07
0x32

DIP-SW 変更後にリセットボタンを押す

(22)

(21)
(23)

(26)
(27)

(24)
(25)

LIN-ID「32」「スレーブヘッダ送信」を押すと、HSB_LIN_COMM(LIN-ID=0x32)が応答を返す。（受信データの 3 バ
イト目は 0x7 で DIP-SW の状態を返している。HSB_LIN_COMM は簡単に LIN-ID を変更できます。）

52

CAN マルチネットワークボード取扱説明書

株式会社

以上、PC で動作するデモプログラムの説明です。
本キットでは、CAN, LIN の通信を用いて、PC から CAN/LIN データのモニタを行ったり、ボードに指示を出す事が可能で、CAN や LIN の動作を実際に体験できる様になっています。
ご自身でマイコンボードで動いているプログラムや、PC 向けのデモプログラムに手を加えてカスタマイズしたいという場合は、別売となっている「CAN マルチネットワーク ソースコード CD」をご購入頂き、プログラムの動作をカスタマイズする事が可能です。（「CAN マルチネットワーク ソースコード CD」には、マイコンボード上で動作するプログラ
ム、PC 上で動作するプログラムの両方のソースコードが含まれます）

CAN マルチネットワークボード取扱説明書

株式会社

53

取扱説明書改定記録
バージョン
REV.1.0.0.0

発行日
2023.6.6

ページ
―

改定内容
初版発行

お問合せ窓口
最新情報については弊社ホームページをご活用ください。
ご不明点は弊社サポート窓口までお問合せください。
株式会社〒060-0042 札幌市中央区大通西 16 丁目 3 番地 7
TEL 011-640-8800 FAX 011-640-8801
e-mail：support@hokutodenshi.co.jp (サポート用)、order@hokutodenshi.co.jp (ご注文用)
URL:https://www.hokutodenshi.co.jp

商標等の表記について
・全ての商標及び登録商標はそれぞれの所有者に帰属します。

・

パーソナルコンピュータを PC と称します。

54

CAN マルチネットワークボード取扱説明書

株式会社

ルネサス エレクトロニクス社 RX231, RL78/F15, RA2L1 搭載
HSB シリーズ応用キット

CAN マルチネットワークボード取扱説明書
通信編
株式会社©2023 北斗電子 Printed in Japan 2023 年 6 月 6 日改訂 REV.1.0.0.0 (230606)