繰り返し関数を登録しておくことでos側から定期的な呼び出しを受けることができます
on_online_loop() / on_offline_loop()
オフライン中の呼び出しとオンライン中の呼び出しの2つがあります。
接続状態によって呼び出されるループ関数が変更となります。
-- called while online every around 1msec
function on_online_loop()
-- os.log(\"online_loop\");
end
-- called while offline every around 1msec
-- You should care about communication because this function will be called
-- different thread.
function on_offline_loop()
-- os.log(\"offline_loop\");
end
オフライン中はuartを受信したらバッファし、オンライン中はuartの信号を受け取ったらバッファに入れるとともに送信するような処理を記載します。
どちらであっても同じ関数を呼び出したい場合にはmy_loop()といった関数を用意して呼び出すことが必要です。
function my_loop()
end
function on_online_loop()
my_loop()
end
function on_offline_loop()
my_loop()
end
Note: OnlineとOfflineのループはそれぞれ別のスレッドからの呼び出しとなります。