SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

コドモに伝える組込みソフトウェア開発

プログラムの実行

シミュレータとマジカルボックスで動作させる


命令を実行してみよう

 SM+のSource(main.c)というウィンドウ(図9)には、作成(改造)したmain関数が表示されています。黄色いマーカーのラインが、「次に実行する命令」の行です。ためしに1行実行してみましょう。1行だけ実行するときは、ファンクションキーの[F8]を1回押すか、あるいは図10に示すSM+の左上にあるアイコンの中から[一行実行ボタン]()をクリックします。

図10:SM+の動作アイコン

 1回操作してもなにも動作しませんが、これは内部処理の事情によるものです。もう1回[F8]キーを押すか1行実行アイコンをクリックしてください。図11のように、黄色いマーカーが次の行に移動します。

図11:55行目が実行されて、マーカーが56行目に移動した

 このとき、さっきまでマーカーのあった55行目のプログラム

 P2.2 = 1;

 は実行されています。でもぜんぜんわかりませんね。そこで、SM+のシミュレーション機能を使って、画面上にマジカルボックスのLEDを作ってみます。

画面上にマジカルボックスのLEDを作る

 SM+の[シミュレータ]メニューから、「入出力」を選んでください(図12)。

図12:[シミュレータ]メニュー

入出力パネルでLEDを描く

 SM+には、「入出力パネル1」という名前のなにもない真っ白のウィンドウが1つ開きます(図13)。これは一種のお絵かきキャンパスです。ここに好きな部品を描くと、なんとそれが本物の部品と同じように動作してくれるのです。では早速、ここにLEDを描いてみましょう。

図13:入出力パネル

 入出力パネルのウィンドウをアクティブにすると、SM+のメニューの中に「部品」という項目が現れます(図14)。

図14:部品メニュー

 この中から、図15のように「LED」を選択してください。

図15:LEDを選択する

 マウスカーソルを入出力パネルのウィンドウへ移動させると、マウスカーソルは+の形になります。ここでドラッグする(マウスを左クリックしたまま移動させる)と、画面に暗い緑色の四角形が表示されます。適当な大きさの位置でドラッグをやめると、図16のような表示になります。この四角形がLEDとして動作してくれます。

図16:入出力パネルにLEDをひとつ描画したところ

 マジカルボックスにはLEDが5つ載っていますから、あと4つLEDを追加します。部品メニューからLEDを選んで描画するのを繰り返してもいいですが、面倒ですし、しかもサイズを揃えるのがやっかいです。こんなとき(同じ部品を複数作るとき)は、コピー&ペーストを使うとうまくいきます。いまあるLEDの絵の上にマウス・カーソルを移動させてコピーを選びます(図17)。

図17:作成した部品をコピーする

 再度、マウスを右クリックしてメニューを表示して、今度は「貼り付け」を選びます。コピー元と同じ場所にペースト(貼り付け)されてしまうので、一見増えていないようですが、LEDの絵を左クリックしてドラッグすると、図18のように2つ並べることができます。

図18:複製した部品は重なって表示されるので移動させる

 貼り付けと移動をあと3回繰り返して、マジカルボックスと同様に全部で5つのLEDを作ります(図19)。

図19:5個のLEDを作る

LEDに性質を与える

 まだこの状態では、描画したLEDはただの四角形です。つぎにこれらにそれぞれ性質を与えていきます。与える性質は、

  1. どのポートに接続されているのか
  2. 1で光るのか0で光るのか

 という電気的な特性だけでなく、

  1. 表示色

 も選ぶことができます。では早速やってみましょう。まずは画面向かって一番左のLEDにマウスカーソルを合わせ、右クリックします。表示されたメニューの中から、一番下のプロパティを選んでください(図20)。

図20:プロパティでLEDの性質を設定する

 図21のようにLEDのプロパティが開きます。一番上にある「ラベル」は、このLEDの名前です。空欄のままでもよいですが、ここはマジカル・ボックスにあわせてD7にしましょう。

図21:LEDのプロパティ画面

 その下が「接続端子」です。ここで、このLEDをマイコンのどのポートに接続するかを選びます。前回登場しましたLEDのポートアサインをもう一度表1に示します。マジカルボックスの回路では、D7はポートP123に接続されていますので、ここもそれに合わせてP123を選んでください。

表1:LEDの接続ポート
D7(赤) P123
D6(赤) P45
D5(赤) P130
D4(赤) P23
D3(緑) P22

 その下が「アクティブレベル」です。これはLEDがアクティブ、すなわち点灯する時のポートの値(レベル)を設定します。ポートを0にしたときに点灯する回路ではLOWを、1にしたときに点灯する回路ではHIGHを選びます。マジカルボックスでは、1にした時に点灯するようになっていますので、ここはHIGHにしてください。設定の終わった画面を図22に示します。

図22:設定済みのプロパティ

 次にプロパティ画面上部の「スタイル」タブをクリックしてください。ここでは表示形態をいろいろ設定することができます。とりあえずD7は赤色LEDなので、ビットマップの中から赤い色のものを選んでみましょう(図23)。

図23:スタイルの設定。赤色を選んでみる。

 [OK]をクリックすると完了です。図24のようになったでしょうか。

図24:左端のLEDの設定だけ終わったところ

 同様に、表1を参考に左から2番目~5番目まで設定します。2番目はラベルがD6で接続端子がP45、3番目はラベルがD5で接続端子がP130、4番目はラベルがD4で接続端子がP23です。ここまではすべてスタイルで赤色を選びます。最後の5番目、一番右端のLEDは、ラベルがD3で接続端子はP22です。D3はマジカルボックスでは緑色のLEDですので、スタイルはさわらず緑色のままにしておきましょう。すべての設定を終えると図25のような表示になります。

図25:すべてのLEDの設定を完了

 以上でシミュレータの設定は完了です。これで入出力パネルはマジカルボックスのLEDと同等に動作するはずです。せっかく作ったパネルですので、保存しておきましょう。

パネルの保存

 図26のように、SM+の[シミュレータ]メニューから「名前をつけて保存」を選びます。

図26:作成したパネルを保存する

 図27のように、ファイル名の入力ダイアログが開きますので、適当な名前で保存します。保存場所はテストプログラムと同じ場所がわかりやすくてよいでしょう。図27の例は D:\mspoon\test1 に マジカルLED.pnl というファイル名で保存する場合です。

図27:ファイル名を指定して保存する

次のページ
シミュレータを使ってみよう

この記事は参考になりましたか?

コドモに伝える組込みソフトウェア開発連載記事一覧

もっと読む

この記事の著者

舘 伸幸(タチ ノブユキ)

NECマイクロシステム株式会社 勤務NPO法人SESSAME 所属開発ツールのソフトウェア開発を経て組込みソフトウェア開発に従事。プライベートにも半田ごては手放さない。2006年からSESSAME に参加。若い世代に物を作る楽しさを伝えていきたい。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/3800 2009/04/03 11:24

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー