初めてのマイコン フリースケール「DEMO9S08QG8」を試す電子工作をはじめよう

» 2006年07月05日 04時20分 公開
[瓜生聖,ITmedia]
フリースケール代表取締役社長 高橋恒雄氏(写真=奥)と九十九電機代表取締役社長 鈴木淳一氏(写真=手前)

 電子工作をやってみたい――「DEMO9S08QG8」は、そんな人に最適なマイコン評価ボードだ。同製品は、フリースケール・セミコンダクタ・ジャパン(以下、フリースケール)と九十九電機の協業により、ツクモロボット王国で販売が開始された。発売当時は、5月の連休を前にして初期入荷した60台すべてが即日完売という、この手の商品ではまれに見る売れ行きを見せている。実売6000円前後と手ごろな価格ながら、この1台でさまざまなテストを行える手軽さが魅力の1つだ。

 先に白状してしまうが、筆者はプログラミングこそ20数年の経験があるが、決してハードウェアには明るくない。ハードウェア絡みのプログラミングといえば大学時代に吉野家の牛丼1杯で友人の卒論の3軸ロボットアームの制御プログラムを請け負ったくらいだ。だが、そのような筆者にとってもこの「DEMO9S08QG8」は非常に興味深い。例えて言えばプログラミング版電子ブロックのような楽しみ方のできる製品になっている。

DEMO9S08QG8とは

 そもそもDEMO9S08QG8は何を目的にしたものか。これは簡単に言えば8ビットマイコンHC(S)08ファミリのMC9S08QG8の挙動・プログラミングを学習するためのキットだと考えて差し支えない。PCとの接続にはUSBを使用し、それだけで給電からフラッシュメモリ内のプログラムの書き換え、USB/BDMインタフェースによるデバッグまで可能になる。さらに、開発ツールとして「Code Warrior Development Studio for HC(S)08 Special Edition」が標準で同梱されている。

 また、基板上には押しボタンスイッチと光センサ、LEDなど入出力が可能なデバイスがいくつか搭載されているほか、拡張用として使用できるRS-232Cコネクタ、32ピンI/Oポートも用意されている。ヘッダピンを実装すればBDMポートも使用可能だ。つまり8ビットマイコンのMC9S08QG8を試すための機能を一通りそろえているわけだ。

ボタンとLEDを各3つずつ搭載するほか、照度センサーも備える。またインタフェースとして、USBとRS-232Cコネクタ、32ピンI/Oポート、BDMポートも用意されている

まずは開発環境をインストール

 DEMO9S08QG8は、PCからはUSB MultiLinkとして認識される。これはDEMO9S08QG8上に実装されているHC(S)08のモニタモードにUSBからアクセスできるデバッグ用のインタフェースだ。そのため、実際にはこのデバイスの先にMC9S08QG8があるという図になる。開発環境として「Code Warrior Development Studio for HC(S)08 Special Edition」が同梱されているので、まずはこれをPCにインストールしよう。

マニュアルは英語だがインストールは画面の指示に従うだけなので迷うことはない

 さて、開発環境のインストールが完了したら、PCを再起動してからUSBケーブルでPCとDEMO9S08QG8を接続する。ハードウェアの追加ダイアログが開くので、指示に従ってドライバをインストールすればUSB MultiLinkとして認識される。正常に動作するとDEMO9S08QG8の基板上のLEDのうち、USB、OUT USB PWR、VDDが点灯し、LED2が点滅し始める。

 なおDEMO9S08QG8には工場出荷時にテスト用のプログラムがあらかじめ書き込まれている。試しにSW1を押してみるとLED1が点灯するはずだ。これはトグルになっているので再度SW1を押すとLED1は消灯する。

 このテスト用プログラムのソースコードは添付CD-ROMにzip形式で収録されている。ローカルドライブに展開してからCodeWarriorのプロジェクトファイルDemo_S08QG8_Test.mcpをダブルクリックするとCodeWarriorが起動するので中を覗いてみよう。左のFilesウィンドウからdemo9S08QG8.cを開けばSW1の割り込みハンドラでLED1を反転させていることが分かる。

出荷時に書き込まれたテストプログラムは、ボタン(SW1)を押すことでLED1の点灯/消灯を制御する。ソースコードはdemo9S08QG8.cだ

デモプログラムの準備

 添付のCD-ROMにはデモ用のプログラムも収録されている。そもそもDEMO9S08QG8の使い方としては、PC上でプログラミングを行い、それをMC9S08QG8に転送し、デバッグ/実行を行うというのが一般的だ。ここではプログラミングが終わった後の一連の流れを確かめるためにデモ用プログラムを転送してみることにしよう。なお、プログラムを転送すると工場出荷時に書き込まれていたプログラムは上書きされる。

 このデモ用のプログラムはRS-232Cを使って操作するので、先に通信端末を用意しておく。PCとDEMO9S08QG8をRS-232Cケーブルでつなぎ、TeraTerm Proやハイパーターミナルなどの通信ソフトでCOMポートに接続する。なお、PC側のRS-232Cコネクタはオス、DEMO9S08QG8側はメスなので、ケーブルは両端がオス・メスになっているものが必要になる点に注意してほしい。通信ソフトは4800bps、8ビット、ストップビット1、パリティなしに設定する。

シリアルケーブルを接続し、TeraTermなどの通信ソフトを用意する

 RS-232Cの準備ができたら先ほどと同じフォルダにDEMO9S08QG8_APP.zipがあるので、これを解凍してDEMO9S08QG8_App.mcpをダブルクリックして開く。プロダクト名のすぐ下のプルダウンメニューが「P&E Multilink/Cyclone Pro」になっていることを確認し、再生マークと虫の絵が描かれたDebugアイコンをクリックする。

 すると「True-Time Simulator & Real-Time Debugger」が起動し、ICDコネクションマネージャが表示される。インタフェースやポートが正常に表示されていればConnectをクリックして先に進もう。Flashメモリヘの書き込みを行うかどうか尋ねてくるので「Yes」をクリックして書き込みを行う。書き込み完了後、プログラムを実行するには「Run/Start」ボタンをクリックすればよい。通信ソフトにメニューが表示されれば起動成功だ。

DEMO9S08QG8_App.mcpを開き、プルダウンメニューを「P&E Multilink/Cyclone Pro」にしてDebugアイコンをクリックするとICDコネクションマネージャが起動する。
ICDコネクションマネージャ内容を確認してConnectを押し、Flashメモリにサンプルプログラムを上書きする。完了後Run/Startボタンをクリックすると、ターミナルにサンプルプログラムのメニューが表示される

サンプルプログラムによるデモを実行

 DEM09S080G8_APPにはクロックや割り込みの設定などを変更したり、テストしたりするための7つのメニューが用意されている。各パラメータの内容を以下に列挙したので、値を変更してどんな挙動をするか試してみるといいだろう。ただし、パラメータをいじっても目に見えて挙動が変わる項目は多くない。

1: ICS setup

  • ICS(lnternal Clock Source:内部クロック・ソース)モジュールの設定

2: TMP PWM setup

  • TPM(Timer/PWM Module:タイマ/PWMモジュール)のクロックソースの設定。TCLKを選択した場合には外部からクロック信号を入力する必要がある

3: MTIM setup

  • MTIM(Modulo Timer Module:モジュロタイマモジュール)の設定。割り込みか発生するたびにLED1が点灯・消灯を綴り退す

4: RTI setup

  • RTI(RealTime Interrupt:リアルタイム割り込み)の設定。RTIは内部の1kHzクロックソースを使用し、ICSの内部基準クロックから独立している。TPMとMTIMを動作させてRTIのクロックを測定したり、RTIをスタート・ストップすることができる

5: STOP test

  • 各ストップモードに入る。モードによってはRTIが有効なときにRTIタイムアウトで復帰する

6: ACMP test

  • ACMP(Analog Comparator:アナログ・コンパレータ)テストにより、ACMPがフォトセンサと電位差計の電圧を比較する

7: ADC test

  • フォトセンサと電位差計の電圧、バンドギャップを測定する

 繰り返しになるが、DEMO9S08QG8はUSB1本で給電からプログラムの書き込み、デバッグまでできてしまうという手軽さと、最初から開発環境が同梱されているという「始めやすさ」が最大の特徴だ。初めて“ハード”に手を出そうとしている人にも敷居の低いパッケージなので是非チャレンジしてほしい。

 また、拡張用のポートも用意されており、直接ボードに実装できる3次元加速度センサーなどの各種モジュールも販売されている。フリースケールの話では、3次元加速度センサーとネットワークを利用した広域リアルタイム地震計などのアイデアもあったそうで、応用例は非常に幅広い。先日行われた電子工作コンテストでもユニークな作品が数多く登場している。腕に覚えのある人も試してみてはいかがだろうか。

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2026年08月05日 更新
  1. Windows 11は8GBメモリでも快適に使えるようになる? 品質向上への取り組みと「26H2」に向けた中間報告 (2026年08月03日)
  2. テプラ、PC接続にも対応したラベルプリンタ「テプラ PRO」新モデル (2026年08月03日)
  3. PC市場の逆風下でMicrosoftが仕掛ける“サプライズ”とは? 2026年後半のSurface新製品を予想する (2026年08月04日)
  4. 新GPU「Radeon RX 9050」が登場するもアキバの反応は静か――2026年8月最新パーツ事情 (2026年08月03日)
  5. 「人主導」から「自律実行」へ――進化する「Microsoft 365 Copilot」の新機能とエージェントAIの現在地 (2026年08月04日)
  6. 10万円台で手に入る、理想の座り心地 電動サポート&ストレッチ機能が魅力のエルゴノミクスチェア「LiberNovo Omni Gen」を試す (2026年08月04日)
  7. AIデータセンターの“真の実力”を左右する「CPU」 その復権の背景にあるものとは? (2026年08月03日)
  8. 「全グレードで2〜3割増し」の衝撃 グラフィックスカードの値上がりラッシュでアキバの購入制限が深刻化 (2026年08月01日)
  9. ノジマの「VAIO Shop in Shop」でカスタマイズVAIOを購入可能に 店頭でデザインや質感を確認しながら購入可能 (2026年08月03日)
  10. リコーPFUコンピューティング、Coreプロセッサの搭載に対応した産業向けATX/microATXマザーボード (2026年08月03日)
最新トピックスPR

過去記事カレンダー