マイコンのソフト開発って、どうやるの? ――「マイコン開発」で知っておきたい用語:マイコン入門!! 必携用語集(4)(2/2 ページ)
マイコンについて、ある程度分かってきたところで、今回は、「マイコン開発」で覚えておきたいいくつかの用語を紹介します。同時に、マイコン開発で使用する開発ツール(開発環境)や全体的な開発の流れも解説します。
統合開発環境(IDE)とは
統合開発環境(IDE: Integrated Development Environment)とは、簡単に説明すると「ソフトウェア開発用の様々な機能が一体となったPC用のアプリケーションパッケージ」です。通常、統合開発環境には、エディタ、コンパイラ、アセンブラ、リンカ、プログラマ、デバッガといった機能が備わっています。一般的なソフトウェア開発のフローに沿って各機能を紹介します。図3に一般的なソフトウェア開発のフローを示します。
ソフトウェア開発の流れ
エディタは、実際にプログラム(コード)を編集する際に使う機能です。最近では、C言語などの高級言語でマイコン用のプログラミングを行うのが一般的ですが、プログラムのサイズや処理時間などの制約がある場合に、アセンブリ言語でプログラミングを行うことがあります。ここで、高級言語とは、より人間が理解しやすい形で記述されるプログラミング言語です。これらのプログラムはエディタ上に記述していきます。
ひとたび、コードができ上がると、コンパイラを使用して作成したコードをコンパイルします。コンパイルとは、高級言語をマイコンが解釈できるオブジェクトコード(機械語)に変換する処理を指します。アセンブリ言語で作成したコードの場合、アセンブラを使用してオブジェクトコードに変換されます。こうして生成された複数のオブジェクトコードはリンカにより結合(リンク)され、ターゲットのマイコンに適合した1つの実行ファイルが生成されます。実行ファイルは、インテル形式(.hex)やモトローラ形式(.s19)などいくつかの形式があります。実行ファイルには、どのアドレス番地に何のデータを書き込むかといった情報が書かれています。補足ですが、コンパイル、アセンブル、リンクといった一連の処理を「ビルド」または「メイク」と呼ぶことがあります。
実行ファイルの準備ができたら、次に、そのファイルをプログラマを使用してマイコンに書き込みます。マイコンに書き込みを行う際、統合開発環境がインストールされているPC(開発環境)とターゲット(実行環境)を接続するデバッグケーブルが必要になります(図2参照)。マイコンへの書き込みが完了したら、デバッガを使用して、マイコンが搭載されているターゲット上でプログラムを実行し、意図した動作をしているかどうかを確認します。デバッガは、通常の実行以外に、コードを1行ずつ実行(ステップ実行)、関数を1回実行して停止(ステップオーバ)、関数に入ったところで停止(ステップイン)、関数を出たところで停止(ステップアウト)、ブレークポイントを張ったところまで実行など、さまざまな実行方法に対応しています。また、メモリ監視、レジスタ監視、変数監視などの機能も搭載していますので、所定のコードを実行した際に、変数やレジスタがどう変化するかといったことが確認できます。中には、プログラム実行中に、変数がどう変化するかをモニタすることが可能な統合開発環境もあります。なお、詳細に関しては、統合開発環境を提供しているツールベンダのホームページをご覧になるといいかと思います。
以上のプロセス(プログラム編集→ビルド→書き込み→実行)を繰り返し行うことで、目的に応じたプログラムを作り上げていきます。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- マイコンの中枢「CPU」とは
お待たせしました。いよいよCPUの話です。CPUはマイコンの中枢部分に相当します。30年くらい前のマイコンはCPUだけで構成されていました。メモリや周辺機能は別のICとしてプリント基板上でマイコンの周辺装置として接続されていました。それほどマイコンにとって大切な部分です。 - のぞいてみよう、マイコンの中!! ―― 複雑な演算も簡単な動作の繰り返し
マイコンの中身って、どうなっているのでしょうか? どうやって複雑な演算を実行しているのでしょうか? その仕組みを知っておくと、いざマイコンを使う時にとても役立ちます。今回は、マイコンの内部の仕事の流れをつかんでください。 - そもそも“マイコン”って何?
マイコンを使いこなすために知っておくべき基本用語を毎回1つずつ取り上げて解説する新連載がスタート!! 第1回目の今回は、「そもそも“マイコン”って何?」という問い掛けから、マイコンの実態や応用分野、具体的な働きについて紹介します。