専攻科特別実験 最終課題
専攻科特別実験では、組込みソフトウェア技術について実験を通して勉強します。
スタッフは、電気電子システム工学科のスタッフのなかでも特にコンピュータとプログラムを愛してやまない藤田さんと矢野です。
さらに、現役バリバリの企業の開発プログラマーの三浦先生です。
専攻科特別実験では、専攻科1年生で機械や電子制御や電気を専門として学んできた学生が、チームを組んで課題に取組みます。今回の課題は、GR-SAKURAと呼ばれるルネサス製のマイコンボードを用いて、サーミスターや液晶表示機そしてスイッチ等の電子回路とマイコンのポートをブレッドボードと呼ばれる試作ボード上に作成し、マイコン内部のプログラムをプログラミングします。
プログラミング課題は、電子温度計。サーミスターに掛かる電圧をマイコンのAD機能をつかって読み取ります。読み取るタイミングはタイマー割込みを用いて行います。ADされた電圧値から、現在の温度を推測します。直線補間法を用いて現在の温度を推測するプログラムを作成し、その温度を液晶表示器に表示します。液晶表示機への表示タイミングは、マイコン内のもう一つのタイマーを用いて行います。スイッチが押されたら、今まで測定した温度の中で、最低温度そして最高温度を1秒ずつ表示し、さらに表示中にまたスイッチが押されたら、メモリーされていた温度をリセットします。
これらのプログラムを設計し、5人から6人のグループで作成します。一見、簡単そうに思えますが、このプログラムの流れを流れ図で書きなさいといわれると。きっと困ってしまいます。こういうのは流れ図ではなく、状態遷移図や状態遷移表を用いて考えていかないといけないのです。
10月から、ソフトウェアの開発プロセスについて勉強してきましたので、最終課題はいままでの勉強の集大成です。グループで作業を分担してコードの作成やテストを行います。コンパイラーから警告がいくつもでます。大体がポインタ関係です。ポインターやメモリ操作について、確認し、さらにハードウェアマニュアルから、必要となるレジスタに値をセットして割込みを許可して、、、デバッガで動かして、ブレイクポイントを設定してと開発を行います。
4チームで作成を行いました。最低温度が表示されなかたり、温度表示の間隔が荒かったりと、いくつか問題はあったようですが温度計を作成することができました。お疲れ様でした。