TWE-Liteのプログラミング(1)
研究で,TWE-Liteを使おうかと思っているので,そのプログラミングについて,基礎的な部分をまとめます.
とりあえず,こいつが一番注意するポイントは,逐次実行するのではなく,イベントに応じて関数が呼び出されることです.
普通のC言語のプログラムのように上から順にではなく,イベントに応じた関数が呼び出されて,その中で処理がはしるみたいな感じです.
イベントの関数は,色々あるけど,私が使いそうなのは以下のものかな...
- cbAppColdStart() - 電源投入時に呼び出される関数
- cbAppWarmStart() - スリープ復帰時に呼び出される関数
- cbToCoNet_vRxEvent() - 無線パケット受信時に呼び出される関数
- cbToCoNet_u8HwInt() - ペリフェラル(周辺機器のこと)の割り込み時に呼び出される関数
詳しくは
ToCoNet (トコネット) - TOCOS-WIRELESS.COM
ユーザ定義イベント処理関数
その他にも,ユーザーが定義できるイベント処理関数があるので,その設定の仕方をまとめようかと思います.
まずは,"使う関数" と "組み込みイベントの定義名" について
ToCoNet_Event_Register_State_Machine(void *pvFunc)
ユーザ定義イベント処理関数を登録します.pvFuncにはイベント処理関数の関数ポインタを指定する.とりあえず,こいつしか使わないかな.
組み込みイベントの定義名
- E_EVENT_START_UP - システム起動時に発生.
- E_EVENT_NEW_STATE - 状態遷移したときに最初に呼ばれるイベント.
- E_EVENT_TICK_TIMER - システムタイマー(4ms)ごとに呼び出される.
- E_EVENT_TICK_SECOND - 1秒ごとに呼び出される.
システム起動時には,
- bStart=FalseでcbAppColdStart()
- bStart=TrueでcbAppColdStart()
- ユーザ定義イベント処理関数(E_EVENT_START_UP)
という順に関数が呼び出される.
通常の割り込み待ち状態では...
次の機会に書きます.