
ここでご紹介するマイコンボードは、CPUを中心として各種の周辺インターフェイスとメモリーをひとつのチップの中に盛り込んだ、「ワンチップマイコン」と呼ばれるLSI素子を使った小型のコンピュータ基板です。コンピュータというとパソコンを一番に想像される方が多いかと思いますが、このワンチップマイコンはどちらかというと色々な機械の中に組み込まれて、その機械を制御するために特定の役割を果たすものです。私達の身の周りの電化製品や自動車などには、このワンチップマイコンが色々な形で組み込まれています。 AKI-H8/3052Fマイコンボードを使えば、そのワンチップマイコンを使ったプログラミングや、ホビーユースの電子工作などを楽しく学ぶことができます。

1.AKI-H8/3052Fマイコンボードとは
 |
|
AKI-H8/3052Fマイコンボードは、ルネサスエレクトロニクス製の16ビットワンチップマイコンH8/3052Fを実装した、秋月電子通商オリジナルのマイコンボードです。通販でひとつ3,000円で購入できます。ただし半完成品なので、基板の四辺に取り付けるI/O用のピンヘッダは自分でハンダ付けする必要があります。また、このマイコンボードだけでは電源を供給したりプログラムを書き込んだり、そしてプログラムの動作を確認することなどはできません。このマイコンボードを載せるマザーボードが別途必要になります。
AKI-H8/3052Fマイコンボードの中心にデン!と乗っているのが、ワンチップマイコンのH8/3052Fです。これは以前よりTekuRoboで扱ってきたH8/.3048Fの上位互換です。実際、このマイコンボードはAKI-H8/3048Fの基板と全く同じものが使われています。AKI-H8/3052Fをはじめとした秋月電子通商の各種基板の回路図は、秋月電子通商のホームページ上に「回路図集」として紹介されていますので、詳細はそちらをご覧下さい。
|
秋月電子通商では、何種類かのルネサスエレクトロニクス製H8系のマイコンボードを扱っています。実はAKI-H8/3052Fは既に古いマイコンボードで、AKI-H8/3069Fなどに乗り換える人などもいるのではないかと思います。どのマイコンボードを使うかは、使う目的に応じて選定すればよいでしょう。ちなみにTekuRoboでは、AKI-H8/3052Fマイコンボードが、以前から使っていたAKI-H8/3048Fマイコンボードと一部を除いてハードウェア的に互換があるため選定しました。残念ながらAKI-H8/3069Fマイコンボードは互換が無いようです。
以下にワンチップマイコンの主な仕様を記載します。 比較のためにH8/3048F、H8/3052F、H8/3069Fの3種類を載せて見ました。
| 項目 |
H8/3048F |
H8/3052F |
H8/3069F |
| 最大動作周波数 |
16MHz |
25MHz |
25MHz |
| アドレス空間 |
16MByte |
16MByte |
16MByte |
| 内蔵ROM(FLASH) |
128KByte |
512KByte |
512KByte |
| 内蔵RAM |
4KByte |
8KByte |
16KByte |
| 外部割込み |
NMI、IRQ0〜IRQ5 |
NMI、IRQ0〜IRQ5 |
NMI、IRQ0〜IRQ5 |
| 内部割込み |
30要因 |
30要因 |
36要因 |
| DMAC |
ショートアドレス4ch
フルアドレス2ch |
ショートアドレス4ch |
ショートアドレス4ch
フルアドレス2ch |
| 16Bit ITU |
16Bitタイマ5ch |
16Bitタイマ5ch |
16Bitタイマ3ch |
| 8Bit ITU |
なし |
なし |
8Bitタイマ4ch |
| TPC |
16Bitパルス出力
最大4Bitx4系統パルス出力 |
16Bitパルス出力
最大4Bitx4系統パルス出力 |
16Bitパルス出力
最大4Bitx4系統パルス出力 |
| WDT |
1ch |
1ch |
1ch |
| SCI |
2ch |
2ch |
3ch |
| A/Dコンバータ |
10Bit 8ch |
10Bit 8ch |
10Bit 8ch |
| D/Aコンバータ |
8Bit 2ch |
8Bit 2ch |
8Bit 2ch |
| I/Oポート |
入出力70本、入力8本 |
入出力70本、入力9本 |
入出力70本、入力9本 |
| 電圧 |
書込み12V/動作5V |
書込み5V/動作5V |
書込み5V/動作5V |
お互いに非常に似通った仕様ですが、大きな特徴が出ているのがROMとRAMの容量と、ITU(インテクレーテッドタイマーユニット)の仕様と、書込み電圧でしょうか。特に書込み電圧については、H8/3048FではDC12Vを印加していたところを、H8/3052FではDC5Vで良くなったという点に注意が必要です。動作電圧のDC5Vで内蔵FLASHへの書込みが可能になったので非常に便利ですが、H8/3048Fで書込みに使っていたマザーボードをそのまま使うと破損します。

2.AKI-H8/3052Fマイコンボードの開発環境
AKI-H8/3052Fマイコンボードは、それだけでは何もできない、ただの板っぺらです。マイコンなのでプログラムを作って送り込んであげて、はじめて動き出すものです。そのための開発環境として、以下の設備が必要です。

【1】AKI-H8/3052Fマイコンボード
今回の主役です。買ってきて組み立てたばかりのマイコンボードは何をして良いのか分からない状態です。このマイコンに仕事をさせるためのプログラムを書込み、その動作の確認を行うのが、今回構築しようとする開発環境の役割です。
【2】マザーボード
AKI-H8/3052Fマイコンボードを実装して、主に以下の仕事をします。
・電源供給。AKI-H8/5052Fに安定したDC(直流)電源を供給します。
・シリアル(SERIAL)通信コネクタ。パソコンとAKI-H8/3052Fが通信を行うためのコネクタを持ちます。
・モードスイッチ。プログラムの書込みモードか、プログラムの実行モードかを切り替えるスイッチを持ちます。
・リセットスイッチ。AKI-H8/3052Fを初期化し、最初から動作を実行させるためのスイッチを持ちます。
・各種周辺I/O。LED、スイッチ、液晶表示器など、プログラムの実行状態を確認するためのI/Oを持ちます。
このマザーボードとして、秋月電子通商から開発支援ボードとして各種のキットや完成品が販売されています。最初はそれらを利用するのが良いでしょう。
【3】Windows PC
プログラムの開発を行い、出来上がったプログラムをAKI-H8/3052Fに書き込むために使います。
プログラム開発環境用のソフトには色々なものがあります。秋月電子通商で扱っているコンパイラ・リンカもその中のひとつです。この開発環境用のソフトによって、開発の作業性が大きく左右されます。TekuRoboでは、ルネサスエレクトロニクスから提供されているHEW4という統合開発環境(IDE)を利用します。

3.AKI-H8/3052fマイコンボードのI/O
AKI-H8/3052Fマイコンボードの四辺についているコネクタのピンファンクションを以下に記載します。マザーボードや開発のターゲットとなる基板とは、このI/Oを経由して接続することになります。
CN1(コネクタ1)
|
No.
|
ピンファンクション |
No.
|
ピンファンクション |
| 1 |
GND |
2 |
GND |
| 3 |
P8-0/RFSH/IRQ0 |
4 |
P8-1/CS-3/IRQ1 |
| 5 |
P8-2/CS2/IRQ2 |
6 |
P8-3/CS-1/IRQ3 |
| 7 |
P8-4/CS0 |
8 |
PA-0/TP-0/TEND0/TCLK-A |
| 9 |
PA-1/TP-1/TEND1/TCLK-B |
10 |
PA-2/TP-2/TIOCA-0/TCLK-C |
| 11 |
PA-3/TP-3/TIOCB-0/TCLK-D |
12 |
PA-4/TP-4/TIOCA-1/A23/CS-6 |
| 13 |
PA-5/TP-5/TIOCB-1/A22/CS-5 |
14 |
PA-6/TP-6/TIOCA-2/A21/CS-4 |
| 15 |
PA-7/TP-7/TIOCB-2/A20 |
16 |
PB-0/TIOCA-3/TP-8 |
| 17 |
PB-1/TIOCB-3/TP-9 |
18 |
PB-2/TIOCA-4/TP-10 |
| 19 |
PB-3/TIOCB-4/TP-11 |
20 |
PB-4/TOCXA-4/TP-12 |
| 21 |
PB-5/TOCXB-4/TP-13 |
22 |
PB-6/DREQ-0/TP-14/CS-7 |
| 23 |
PB-7/DREQ-1/TP-15/ADTRG |
24 |
FWE |
| 25 |
P9-0/TxD0 |
26 |
P9-1/TxD1 |
| 27 |
P9-2/RxD0 |
28 |
P9-3/RxD1 |
| 29 |
P9-4/IRQ4/SCK0 |
30 |
P9-5/IRQ5/SCK1 |
| 31 |
P4-0/D0 |
32 |
P4-1/D1 |
| 33 |
P4-2/D2 |
34 |
P4-3/D3 |
| 35 |
+5V OUT |
36 |
+5V OUT |
| 37 |
GND |
38 |
GND |
| 39 |
+12V IN |
40 |
+12V IN |
CN2(コネクタ2)
| No. |
ピンファンクション |
No. |
ピンファンクション |
| 1 |
GND |
2 |
GND |
| 3 |
STBY |
4 |
RES |
| 5 |
NMI |
6 |
P6-3/AS |
| 7 |
P6-4/RD |
8 |
P6-5/HWR |
| 9 |
P6-6/LWR |
10 |
A-VCC |
| 11 |
A-REF |
12 |
P7-0/AN-0 |
| 13 |
P7-1/AN-1 |
14 |
P7-2/AN-2 |
| 15 |
P7-3/AN-3 |
16 |
P7-4/AN-4 |
| 17 |
P7-5/AN-5 |
18 |
P7-6/AN-6/DA-0 |
| 19 |
P7-7/AN-7/DA-1 |
20 |
A-VSS |
CN3(コネクタ3)
| No. |
ピンファンクション |
No. |
ピンファンクション |
| 1 |
GND |
2 |
GND |
| 3 |
P4-4/D4 |
4 |
P4-5/D5 |
| 5 |
P4-6/D6 |
6 |
P4-7/D7 |
| 7 |
P3-0/D8 |
8 |
P3-1/D9 |
| 9 |
P3-2/D10 |
10 |
P3-3/D11 |
| 11 |
P3-4/D12 |
12 |
P3-5/D13 |
| 13 |
P3-6/D14 |
14 |
P3-7/D15 |
| 15 |
P1-0/A0 |
16 |
P1-1/A1 |
| 17 |
P1-2/A2 |
18 |
P1-3/A3 |
| 19 |
P1-4/A4 |
20 |
P1-5/A5 |
| 21 |
P1-6/A6 |
22 |
P1-7/A7 |
| 23 |
P2-0/A8 |
24 |
P2-1/A9 |
| 25 |
P2-2/A10 |
26 |
P2-3/A11 |
| 27 |
P2-4/A12 |
28 |
P2-5/A13 |
| 29 |
P2-6/A14 |
30 |
P2-7/A15 |
| 31 |
P5-0/A16 |
32 |
P5-1/A17 |
| 33 |
P5-2/A18 |
34 |
P5-3/A19 |
| 35 |
P6-0/WAIT |
36 |
P6-1/BREQ |
| 37 |
P6-2/BACK |
38 |
CK |
| 39 |
GND |
40 |
GND |
CN4(コネクタ4)
| No. |
ピンファンクション |
No. |
ピンファンクション |
| 1 |
+12V IN |
2 |
GND |
| 3 |
+5V OUT |
4 |
RxD1 |
| 5 |
RxD0 |
6 |
TxD1 |
| 7 |
TxD0 |
8 |
FWE |
| 9 |
MD2 |
10 |
RES |
ピンファンクション欄に記載されている用途は、スラッシュ"/"で区切った複数の機能を、ひとつのピンで共有しているという意味です。つまり設定によってピンの機能が変わります。

TekuRoboでは、上記でご紹介した開発環境の構築やプログラムの開発方法などについて、なるべく分かりやすく解説して行きたいと思います。

|