|
HOME >>(連載)USBSPYDER08を使ってみよう >>USBSPYDER08を使ってみよう(部品外付けで動作させる-後編) (連載4回)
USBSPYDER08を使ってみよう(部品外付けで動作させる-後編) (連載4回)
前回はUSBSPYDER08に圧電スピーカをつなぐハードウェアとソフトウェアのひな型を作りました。
今回は、プログラムを完成させます。
= プロジェクトを再開する =
前回作成途上だったプロジェクトを再開します。
「スタート」メニューから"CodeWaiior IDE"を呼び出し、"Startup"ダイアログの"Load Previous Project"(以前使ったプロジェクトをロードする)をクリックします。

すると、使ったことのあるプロジェクト一覧が開きます。
"SPY2"プロジェクトを選択して、"Open Project"(プロジェクトを開く)をクリックします。

これでプロジェクトが開きました。
= プログラムを書く =
いよいよ、アプリケーション独自のプログラムを記述します。
まずはメイン・ルーチンが入っているファイルを開きます。左の"Project Panel"(プロジェクト・パネル)の"User Modules"(ユーザ・モジュール)という場所に、プロジェクト名と同じ名前のソース・コード・ファイルが作成されています。
ここでは、"SPY2.c"という名前です。

このファイルをダブルクリックするとエディタが開きます。

ソース・コードに2か所、追加を行っています。
まず、16ビットの大域変数を三つ定義しています。

そして、"main()"関数の中には、無限ループを配置し、その中からメソッドを呼び出しています。
for (;;) {
(void)PPG1_SetFreqHz(Freq1); // 第一番目の音を出す。
Cpu_Delay100US(Period); // 時間待ちをする。
(void)PPG1_SetFreqHz(Freq2); // 第二番目の音を出す。
Cpu_Delay100US(Period); // 時間待ちをする。
}
"SetFreqHz"メソッドを実行するとエラーコードを返します。
指定した周波数が下限値と上限値の間になかった場合などにエラーが発生するのですが、ここでは"(void)"によって無視しています。
アプリケーション・プログラムは、以上で完成です。
= プログラムを実行する =
それでは、USBSPYDER08にプログラムを書き込んで実行させてみましょう。
パソコンにUSBPSYDER08を接続したら、メニュ・バーの"Project" - "Debug"を選ぶか、F5キーを押すと、コンパイルの後、デバッガが呼び出されます。
最初に現れるのは、"Target Connection"(ターゲットへの接続)ダイアログです。

このダイアログでは、"Hardware Model:"(ハードウェアの種類)に"USBSPYDER8"を選び、"Device code"(デバイスの型式)に"MC9S08QG4"を選んで、"Connect"(接続)をクリックします。
すると"Target in progress..."(ターゲットとの接続の進捗)ダイアログが開き、プログラムが書き込まれます。

プログラムが書き込まれたら、デバッガ・ウィンドウが開きます。

メニュー・バーから"Run" - "Start/Continue"を選ぶか、F5キーを押すとプログラムが実行され、音が鳴り始めます。
"Data:1"ウィンドウには、大域変数の一覧が表示されています。このウィンドウから、大域変数の値をリアルタイムに変更することができます。

"Freq1"をダブルクリックすると数値を変更することができます。
変更された数値は、すぐに第一の音の高さに反映しますので、デバッガから好みの音を探すことができます。
同様に、"Freq2"で第二の音の高さを"Period"で音の長さを変更することができます。
変数の変更は、プログラムが実行されているかどうかに関わらず行うことができます。また、変数を変更する操作によってプログラムやタイマが影響を受けることもありませんので、デバッガが動作しているからといって音の高さやテンポが変わることもありません。
このように動作中のマイコンに対してデバッグを行う機能を"In-Circuit Debug"(回路に実装した状態でのデバッグ)と呼びます。
この機能は、バックグラウンド・デバッグ・モードの大きな特徴の一つです。
次回は、簡単なアプリケーションを作成して、USBSPYDER08を開発ツールとして使ってみます。
田中範明
タグ:
USBSPYDER08
投稿者: yoshida 日時: 2007年07月20日 15:40 | パーマリンク |TOPページへ ▲画面上へ
トラックバック
このエントリーのトラックバックURL: http://www.eleki-jack.com/mt/mt-tb.cgi/414
|