SHOEISHA iD

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

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

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

たった5つのルールではじめるC言語開発

論理演算の様子を観察

LED表示でシフト演算の動作を見る


確認のためのLED表示パネルを作ろう

 次に、LEDを表示するパネルを作成します。これには以前作ったものを再利用します。[シミュレータ]メニューから[開く(O)]を選んでください(図4)。

図4:シミュレータのパネルデータを開く
図4:シミュレータのパネルデータを開く

 ファイル選択のダイアログが表示されます。まずは一番下の「ファイルの種類」について、▼をクリックして選択メニューを表示し、「入出力パネルファイル(*.pnl)」を選択してください。すると、以前作成して保存しておいたマジカルLED.pnlというファイルが表示されますので、これを選んで[開く]をクリックします(図5)。

図5:入出力パネルから、マジカルLED.pnlを選ぶ
図5:入出力パネルから、マジカルLED.pnlを選ぶ

 これでSM+には図6のように、以前作成したLEDの表示パネルが現れます。

図6:以前作成したLED表示パネルを呼び出した
図6:以前作成したLED表示パネルを呼び出した

 では、このパネルを改造してシフト実験用のLED表示器を作ります。図7のように、図形メニューから「選択」を選んで、表示パネル上の部品を選択できるモードにします。

図7:図形の選択モードに設定する
図7:図形の選択モードに設定する

 選択モードにしたら、パネルの表示内容を改造していきます。最初に、今回の実験で不要な右端の緑のLEDを削除します。図8のように、緑のLEDを右クリックしてメニューから削除を選びます。

図8:緑のLEDを削除する
図8:緑のLEDを削除する

 次に、4つの赤いLEDの(マイコンの)端子への割り付けを変更していきます。向かって一番左端をP23にしましょう。さきほど同様に左端のLEDを右クリックして、メニューからプロパティを選びます(図9)。

図9:端子割り付けを変更するためにプロパティを開く
図9:端子割り付けを変更するためにプロパティを開く

 図10のような設定画面が開きますから、接続端子をP23/ANI3に、ラベル(このLEDの名前)も端子名に合わせてP23にします。アクティブレベルはHIGHのままです。同様に他の3つのLEDも、左から順番に"P22/ANI2, P21/ANI1, P20/ANI0"に接続端子を変更してください。

図10:設定画面で接続端子を変更
図10:設定画面で接続端子を変更
プチ解説

 ポート名の後ろには、/ANIxという文字列が付いています。たとえばP23の後ろには/ANI3が付いています。ANIはアナログ入力のための端子です。ポート23の端子は、アナログ入力3番の端子と兼用になっているので、このような表現となっています。このように1つの端子を複数の機能で使うようになっていることを、兼用端子といいます。

 ※以前掲載した「プチ解説:兼用端子」も参照してください。

 4つのLEDすべての設定が完了したら、[シミュレータ]メニューから「名前をつけて保存」を選んで、このパネルを保存します。ファイル名はP2LEDで保存しておいてください(図11~図12)。

図11:作成したパネルを保存する
図11:作成したパネルを保存する
図12:ファイル名は"P2LED.pnl"
図12:ファイル名は"P2LED.pnl"

 以上で準備完了です。図3にも表示されているソースウィンドウをクリックしてアクティブにし、ステップ実行アイコンをクリックして10行目まで進めてください。この段階で、8行目のP2 = 1;まで実行されたことになります。図13のように、実行カーソルが10行目にあって、パネルでは一番右のP20のLEDが点灯していれば正常です。もしLEDが点灯していない場合は、再度LEDのプロパティを開いて設定を確認してください。一番右の、現在点灯しているはずのLEDは、接続端子がP20/ANI0になっていなければなりません。

 修正した場合は、CPUリセットアイコンボタンをクリックして、最初からやり直してください。

図13:P2に1を出力してLEDが点灯した状態
図13:P2に1を出力してLEDが点灯した状態

 ここまでうまくいったら、さらに1行ずつステップ実行してみてください。点灯するLEDが左にひとつずつ「シフト」していく様子がわかります。

次のページ
プログラムを少し変更してみよう

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

たった5つのルールではじめるC言語開発連載記事一覧

もっと読む

この記事の著者

舘 伸幸(タチ ノブユキ)

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

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

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

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/3727 2009/03/26 18:01

イベント

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

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

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

メールバックナンバー