開発環境とテスト・プログラム |
● ハードウェアの基本情報
C P U |
ATmega328P-AU (TQFP32 32ピン・パッケージ) |
Xtal |
16MHz |
表 示 器 |
モノクロ液晶 横 84 x 縦 48 ドット バックライト付き
Nokia 5110相当品 (携帯電話のリサイクル品) |
入力ボタン |
プッシュ・スイッチ 7個 (上、下、左、右、A、B、C) |
スピーカー |
圧電スピーカー
外部出力用 φ3.5 ミニジャック |
通信端子 |
I2Cポート ×2 4ピン コネクター (2つは整列接続)
シリアルポート (USB端子 マイクロ B メス コネクター)
ISP端子 (6ピン・ピンヘッダ) ISP書込機用 |
ディスク |
マイクロSDカード |
バッテリー |
LiPo 3.7V 100mAh以上 (USB端子から充電) |
外形寸法 |
90 x 45 x 12 mm (基板寸法、アクリル板は含まず) |
付 属 品 |
マイクロSDカード (128MB ゲーム等)、USBケーブル、カード・リーダ |
● 詳細な情報
注.回路図には一部間違いがあります。 (スピーカー部)
● 私的情報
・アクリル筐体の厚みがけっこうあり、コンパクトとは言えない。
・LCDはバックライトが暗く視認性はあまり良くない。
・LCDが携帯電話のリサイクル品のため、購入時に画面のキズや汚れのある物がある。
・使用1週間で、バッテリーから少量の液漏れあり。(発火等がないか心配・・・)
・ゲーム自体の完成度はどれも高いが、ドットが少ない上に画面が小さく、どれを遊んでも面白くない。
(よって、端末に使う方が圧倒的に利用価値があると思う)
|
● BASCOM-AVRでの開発環境
○ グラフィックLCD (Nokia 5110相当)のライブラリ。
・上のライブラリ「glcd-Gamebuino.LBX」を、
C:\Program Files (x86)\MCS Electronics\BASCOM-AVR\LIB\
にコピーします。
○ テスト・プログラム。
・上の2つのファイルを、任意のフォルダーにダウンロードします。
・「Gamebuino_Test_001.bas」をコンパイルします。
・SDカードを使用する場合は、下記のディスク用プログラムを追加します。
○ SDカードを使用する場合。 (BASCOM-AVR(製品版)が必要です)
・上の2つのファイルを、テスト・プログラムと同じフォルダーにダウンロードします。
※ この2つのファイルは、コンパイルしないで下さい。
・「Gamebuino_Test_001.bas」の冒頭にある「Sdcard_use = 0」行の[0]を[1]に変更してから
コンパイルします。
○ 書込機の設定。
・プログラムの書き込みは、USBケーブルを使用して行えます。
(SDカードからも起動できます。 下記の項を参照)
・BASCOM-AVRのメニューバーから、[ Options ]→[ Programmer ]と進みます。
・「Programmer」のプルダウンメニューから、[ ARDUINO ] を選択します。
・「COM-port」のプルダウンメニューから、「USB接続ポート番号」を選択します。
「USB接続ポート番号」は、パソコンに「Gamebuino」をUSBケーブルで接続してから、
Windowsの「デバイス マネージャー」で「ポート(COMとLPT)」の「USB Serial Port (COMx)」で
調べます。
・BAUD(ボーレート)を、プルダウンメニューから115200を選択します。
・その後は、「AVRISPmkII」と同様の画面から書き込みが行えます。
※注意 「AVRISPmkII」等のISP書込機からもプログラムの書き込みが行えますが、
一度ISP書き込みを行うと、AVR内に用意されているブートローダーも消えてしまいます。
ブートローダーが無くなると、以降は再度ブートローダーを書き込むまで、USBケーブルを
直接接続した[ARDUINO]の書き込みやSDカードのブートはできなくなります。
|
● SDカードからのブート (ユーザー・プログラムの実行)
ISP書込機やUSBケーブルを使わずに、SDカードに書き込んだユーザーのプログラムを起動できます。
 |
マイクロSDカードにプログラムのHEXファイルを
書き込んでおくと、ブートローダーが読み込んで
実行します。 |
準 備 |
1. マイクロSDカードを用意します。
・容量は2GB以下で、FAT16(別名FAT)でフォーマットした物。 |
2. SDカードに、「LOADER.HEX」ファイル(ディスクのローダー)をコピーします。
・「LOADER.HEX」は、付属のゲームが入ったSDカード内、
または「Gamebuino-Games-Compilation」からダウンロードできます。
・付属のゲームが入ったSDカードを、そのまま使う事もできます。
・ファイル名は、拡張子(.HEX)を含めて全て大文字にする必要があります。 |
3. プログラムをコンパイルして、HEXファイルを作ります。
・BASCOM-AVRでは、コンパイル時に".BIN"ファイルと共に同じフォルダーへ作られます。 |
4. SDカードにプログラムのHEXファイルをコピーします。
・ファイル名は8文字以内(XXXXXXXX.HEX)で、拡張子(.HEX)を含めて全て大文字に
する必要があります。 |
起 動 |
1. プログラムを書き込んだSDカードをGamebuinoに差し込みます。 |
2. [C]ボタンを押したまま電源を入れて、2秒以上待ってから[C]ボタンを離します。 |
3. 画面が消えた状態で、SDカード内のファイル数にもよりますが10〜20秒ほど待ちます。 |
4. 下の写真のようなプログラムの選択メニューが表示されます。
・8文字以内のファイル名が表示されます。
・ゲームが入っていると、アイコンがたくさん出ます。
・アイコンを自分で作る事もできます。(INF encoder) |
5. [上下左右]ボタンでプログラムを選択して、[A]ボタンを押します。 |
6. 読み込みの確認画面が出ますから、再度[A]ボタンを押します。
・この画面にプログラムの操作説明などを表示する事もできます。(INF encoder)
・左右ボタンでファイルメニューが変わり、HEXファイルの削除等ができます。
・[B]または[C]ボタンで、読み込みをキャンセルできます。 |
7. HEXファイルがAVRのフラッシュに読み込まれて、選択したプログラムが起動します。 |

プログラムの選択 |

読み込みの確認 |
・その後は電源を切って再度入れると、読み込んだプログラムがそのまま起動します。
・プログラムを変更する場合は、上記の「起動 1.」からを繰り返す事で、パソコンが無くても
出先で起動するプログラムを変える事ができます。
|
● テスト・プログラムの解説
・基本のテストプログラムは、BASCOM-AVR(試用版)でもコンパイルできます。
・SDカードを使用したプログラムを書く場合は、BASCOM-AVR(製品版)が必要です。
・ハードウェアの接続ポートは、下記のラベルが付けてあります。
Btn_u ボタン[Up]の接続ポート。
Btn_d ボタン[Down]の接続ポート。
Btn_l ボタン[Left]の接続ポート。
Btn_r ボタン[Right]の接続ポート。
Btn_a ボタン[A]の接続ポート。
Btn_b ボタン[B]の接続ポート。
Btn_c ボタン[C]の接続ポート。
Backlight G-LCDのバックライトの接続ポート。
Sp_out スピーカーの接続ポート。
・ボタン(スイッチ)の接続ポートは、全てAVRの内蔵プルアップ抵抗器でプルアップされています。
したがってポートの状態は、ボタンを押すと[L]、離すと[H]です。
テスト・プログラムでは、スイッチを押すと確答する表示が反転表示されます。
[C]ボタンでは、LCDのバックライトがON/OFFします。
・LCDのバックライトは、ポートを[H]にすると点灯します。
Timer0の[OC0B]ポートに配置されているので、PWMによる輝度調整も可能です。
・スピーカーの接続ポートは、[H]でアクティブです。 (消音時は[L])
圧電スピーカーなので、任意の周波数で[H]と[L]を繰り返す事で発音します。
外部出力用のφ3.5ミニジャック部分の回路図に間違いがあります。
スピーカーの接続ポートが[H]になるとトランジスタがONになり、φ3.5ミニジャックに
3.3Vの電圧が出ます。
・搭載されているグラフィックLCDは、LCDモジュールのグラフィック・メモリーに対して書き込み
動作のみで、読み出しはできません。
したがって、メモリーとの倫理和が必要な[LINE]、[CIRCLE]、[BOX]、[PSET]等の命令は
使用できません。
キャラクターのフォントを組み合わせて、線や記号などを表示します。
LCDのコントラストは変更できない仕様のようです。(購入時の設定画面でもできなかった)
・「glcd-Gamebuino.LBX」では、下記の命令が使用できます。
[CLS] グラフィックLCD画面の消去。
[LCDAT] 文字等のフォントデータを表示。
(表示オプション 1:反転表示、2:実線のアンダーライン、3:点線のアンダーライン)
[SHOWPIC] グラフィックLCDに、BGFファイル(BMPを圧縮した画像)を描画。
・I2Cポートは、[I2CSEND]や[I2CRECEIVE]等のI2C命令が使用できます。
クロック周波数は、4MHzです。 (変更可能)
・A/Dコンバータは下記の2チャンネルが使用できます。
[6] : 電池電圧のA/D変換値。
[7] : CDSセンサー電圧のA/D変換値。
・CDS光センサーは、明るさの変化により、明るくなるとポート電圧が上がり、暗くなると下がります。
テスト・プログラムでは、明るさを[0〜1023」の数値に置き換えて、1秒間隔で表示しています。
・電池電圧は、バッテリーの電圧を測定して表示しています。
・シリアル通信(USART)は、USBポートでパソコンと接続し、ターミナルソフト等で通信を行えます。 [PRINT]や[INPUT]命令。
COMポート番号は、上記の書込機の設定と同じ番号です。
通信パラメータは、9,600ボー、パリティー無し、データ・ビット 8、ストップビット 1 です。
(変更可能)
・SDカード用のAVR-DOSを組み込んだ場合は、AVR-DOSの命令によりファイルへのアクセスや
書き込みが行えます。
テスト・プログラムでは、SDカード内のファイル数を表示しています。
|