
micro:bit中級者編〜I2CでLCDを制御する(12)
前回のフローの中で、アクション毎に待ち時間を入れる必要があるのに気づかれましたか?26.3usとか200msとか書かれてますよね。
経験上、こういうタイミング規定が一番トラブルの元なのですよ。得てして組み込みソフト以外のプログラマーって実時間の感覚ないですから。自分の書いたプログラムの1ステップがどのくらいの時間かかるか意識しながら書いている人はほとんどいないと思います。
その点、組み込みソフトのプログラマーは、自分の書いたソフトで壊れないか(火を吹かないか)、実行時間はどのくらいか、消費電力はどのくらいか、など、PC・スマホのアプリやサーバサイドのプログラミングしかしたことのない人にはおよそ想像つかないような実世界で起きることを考えています。
===
本題に戻ると、この手の時間規定を守るには、実行時間が明示されている命令を探します。micro:bitには以下のようなのが見つかります。
最小時間が100msとちょっと大きめに感じますが、何万回も常にループするようなところならいざ知らず、初期化に使うだけならそれほど気にならないでしょう。
ここまで
いいなと思ったら応援しよう!
