Scratch
テンプレートコードです。
act0は中身が空でしたがScratchには以下のコードが含まれます。
setup()
void setup() {
/*** SETUP section */
txreq_stat = MWX_APIRET(false, 0);
// the twelite main class
the_twelite
<< TWENET::appid(APP_ID) // アプリケーションID
<< TWENET::channel(CHANNEL) // チャネル
<< TWENET::rx_when_idle(); // 受信有
// Register Network
auto&& nwk = the_twelite.network.use<NWK_SIMPLE>();
nwk << NWK_SIMPLE::logical_id(0xFE); // 子機、特定アドレス指定なし(0xFE)
/*** BEGIN section */
Buttons.begin(pack_bits(PIN_BTN), 5, 10); // ボタン処理初期化
the_twelite.begin(); // start twelite!
/*** INIT message */
Serial << "--- Scratch act ---" << mwx::crlf;
}アプリケーションID APP_ID, 無線チャネルCHANNEL、受信有、子機アドレス0xFEとして始動します。
begin()
始動時setup()の後に1回だけ呼び出されます。メッセージの表示のみ。
loop()
ボタン(スイッチ)の入力検出
Buttonsによる連続参照により状態を確定します。ボタン状態が変化したらシリアルに出力します。
シリアルからの入力
シリアルから1文字読み込んで、入力文字に応じた処理をします。
パケットの受信
パケットを受信したら、送信元のアドレス情報を表示します。
wakeup()
スリープ起床時に最初に呼び出されます。メッセージの表示のみ。
vTransmit()
送信要求を行う最小限の手続きです。
この関数を抜けた時点では、まだ要求は実行されていません。しばらく待つ必要があります。この例では100-200msの送信開始の遅延があるため、送信が開始されるのは早くて100ms後です。
最終更新