組込み・ファームウェア
OSを使わないマイコンのプログラムでよく見られる「スーパーループ」の構成の説明として正しいものはどれか。
- Amainの中の無限ループで、各処理を順に呼び出し続け、急ぎの処理は割り込みで行う
- B処理ごとに別のプロセスを作り、OSが切り替える
- C1つの処理が終わるたびにマイコンを再起動する
答えと解説を見る
正解:A. mainの中の無限ループで、各処理を順に呼び出し続け、急ぎの処理は割り込みで行う
スーパーループでは、初期化の後に「while (1)」の中でセンサの読み取り、計算、表示などの処理を順番に呼び出し続けます。時間に厳しい処理は割り込みで行い、フラグでループに知らせます。OSが要らず、メモリも少なくて済み、動きも追いやすいのが利点です。ただし1つの処理が長くかかるとほかの処理がすべて遅れるので、処理が増えて複雑になるとRTOSが検討されます。
- A. 正しい。単純で、小さなマイコンに向いています。
- B. それはOSを使う構成です。
- C. 再起動はしません。