CAN-LINゲートウェイのソフトウェア・モジュールの実装 ――高い信頼性を確保して異なるプロトコル通信間をつなぐ
今回作成するゲートウェイは,LINのマスタ機能とCANノードを兼ねているため,ゲートウェイ本来の動作だけでなく,LINマスタまたはCANノードとしてのユーザ・アプリケーションを実装するケースも考えられます.そのため,表1に示すような基本API(application programming inter- face)を実装しています.
以下に,これらのモジュールを設計する際に着目するべき点についてまとめます.
表1 ゲートウェイAPI一覧
API
|
概 略
|
通信方向
|
Gw_s4LinPutMessage | LINスレーブ・ノードへの送信要求 | ゲートウェイ→LINスレーブ(送信ID) |
Gw_s4LinGetMessage | LINスレーブ・ノードからの受信要求 |
ゲートウェイ→LINスレーブ(送信ID) |
Gw_s4LinPutMessage | CANネットワークへの送信要求 | ゲートウェイ→CANノード |
Gw_s4LinGetMessage | CANネットワークへの受信要求 | ゲートウェイ→CANノード (リモート・フレーム送信) |
Gw_voLinSleep | LINスリープ・コマンド送信 | ゲートウェイ→LINスレーブ |
Gw_i4GwWakeup | LINウェイクアップ送信 | ゲートウェイ→LINスレーブ |