初めてのマイコン フリースケール「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年02月06日 更新
  1. Surface RT「歴史的大失敗」の裏で何が? エプスタイン文書が示すMS元幹部の焦りと情報漏えい (2026年02月05日)
  2. Western Digitalがブランドを「WD」に統一 100TB超の大容量化とSSDに迫る高速化技術のHDDも開発中 (2026年02月04日)
  3. デスクの前に座ってプレイできないなら、“ポータブルゲーミングPC”という選択肢はアリ? 元Switchユーザーが「ROG Xbox Ally X」を試したら (2026年02月04日)
  4. 「GeForce NOW」のクライアントアプリにLinux版(β)登場 「Ubuntu」に対応 (2026年02月05日)
  5. 「VAIO SX14-R」の“ふるさと”見学記 ノジマグループ参画後も進化が続く“物作り” (2026年02月05日)
  6. 外付け水冷2in1 PC「OneXPlayer Super X」の実機を見てきた TDP120Wの“爆速”AIワークステーション (2026年02月05日)
  7. TCL、“紙の質感”を重視した薄型軽量11.5型スマートノート (2026年02月04日)
  8. アイ・オーがUSB接続スリムBD/DVDライターの新モデルを投入 TV/チューナーのHDDに録画した番組をダビングできるアプリ付きも選べる (2026年02月04日)
  9. フロッピー世代に刺さるレトロなデザインが魅力の「Trozk モバイルバッテリー TP09U」が19%オフの8080円に (2026年02月05日)
  10. エレコム、旧型の法人向けコンセント型無線LAN機器に脆弱性 使用中止と買い替えを要請 (2026年02月03日)
最新トピックスPR

過去記事カレンダー

2026年