中継器の実装
中継機の基本的な実装を見ます。
中継器は、ネットワークの要求に応えて中継する機能を提供しますが、中継以外にもセンサー情報の送信といった処理も可能です。原則として常時給電で動作させます。
モジュール定義, include
cbAppColdStart()
アプリケーションIDやチャネルは、ここで決めておきます。また初期化処理等は vProcessEvCore()
関数に記述します。
cbToCoNet_vNwkEvent()
中継機では E_EVENT_TOCONET_NWK_START
E_EVENT_TOCONET_NWK_DISCONNECT
メッセージを処理します。
cbToCoNet_vRxEvent()
受信方法は単純ネットと大きく変わりません。tsRxDataApp
構造体には違いがあります。
中継パケットは cbToCoNet_vRxEvent()
コールバックでは処理されません。中継器に直接届いたパケット(送信専用の子機からパケットなど)を処理します。
vProcessEvCore()
システム始動時 E_EVENT_START_UP
に、tsToCoNet_NwkLyTr_Config
構造体の設定、ToCoNet_NwkLyTr_psConfig()
関数の実行、 ToCoNet_Nwk_bInit()
関数によるネットワークの初期化、ToCoNet_Nwk_bStart()
関数によるネットワークの開始を行います。
設定では中継器の指定(TOCONET_NWK_ROLE_ROUTER
)、レイヤー 数、NBビーコンの指定(TOCONET_MOD_LAYERTREE_STARTOPT_NB_BEACON
)が必須です。
ネットワーク開始後に、E_EVENT_TOCONET_NWK_START
イベントを受け取ります。また、上位ノードをロストした場合 E_EVENT_TOCONET_NWK_DISCONNECT
を受け取ります。
最終更新