2019.07.19掲載
2023.03.25更新
IchigoJamやIchigonQuestで利用できるゲームパッドを制作してみました。ヘタの形をイメージした基板なので「HetaPad(ヘタパッド)」。
キーボードエンコーダIC「HT82K629A」を搭載し、PS/2・USBキーボードとして動作しますので、IchigoJamだけでなく、他の多くのコンピューターでも使用できます。
【大切なお知らせ】
2023年3月出荷分までの本製品について、部品と説明書に誤りがありました。訂正してお詫び申し上げます。
対象部品:抵抗(R1)
本来であれば「1.5kΩ」を同梱するところ、「15kΩ」の抵抗を同梱していました。また、説明書内の表記につきまして「茶緑赤金」とするところ「茶緑橙金」となっておりました。
ご購入いただいておりますお客様には本来の1.5kΩの抵抗をお送りさせていただきますので、お問い合わせフォームよりお知らせください。
構成パーツはそんなに多くありませんので、子どもたちでも手軽に電子工作できます。
【パーツ一覧】
① HetaPad プリント基板
② R1 抵抗 1.5kΩ (茶緑赤金)
③ R2 抵抗 100kΩ (茶黒黄金)
④ C1,C2,C3 セラミックコンデンサ 0.1μF 104
⑤ C4 セラミックコンデンサ 0.01μF 103
⑥ SW9 スライドスイッチ ★
⑦ IC1 ICソケット ★
⑧ XT1 セラミック発振子 6MHz ★
⑨ C5 セラミックコンデンサ 10μF 106
⑩ CN1 USBコネクタ Bタイプ
⑪ SW1~SW8 タクトスイッチ 12mm×12mm
⑫ キーボードエンコーダIC HT82K629A ★
【組立説明書】
100円ショップでも売っているウレタンパネルを好みの形に切り取って、基板の裏に両面テープで貼り付けると、はんだ面がチクチクせず、持ちやすくなります。
赤色のパネルをイチゴ型に切り取って貼り付けると、イチゴ型ゲームパッドの出来上がり!
上下左右:カーソルキーと同じ
Aボタン:Enterキー
Bボタン:ESCキー/SPACEキー(スライドスイッチで切り替え)
Xボタン:Xキー
Yボタン:Yキー
IchigonQuestで利用するときは、スライドスイッチをESC側にします。
IchigoJamとの接続は、キーボードとの差し替えで、USBケーブル(A-Bタイプ)を使用します。
※HetaPadを使うときは、IchigoJamの電源を切った状態で、キーボードと差し替えます。
HetaPadで遊ぶには、あらかじめキーボードを使ってプログラムを打ち込み、ファイル0にセーブしてIchigoJamの電源を切ります。
次にキーボードとHetaPadを差し替えて、IchigoJamのタクトスイッチ(ボタン)を押しながら電源を入れて、自動起動させます。
WindowsやMacでもUSBキーボードとして動作しますので、IchigoJam Webでも利用可能です。(キーボードと併用可)
方向ボタンとSPACEボタン(Bボタン)はBTNコマンドまたはINKEYコマンドで押されたか判定できます。
※IchigoJam ver 1.4では、Xボタン(キーコード:88)もBTNコマンドで判定できます!(2019.12.06現在)
【プログラム例】
10 IF BTN(UP) THEN ?"UP"
20 IF BTN(DOWN) THEN ?"DOWN"
30 IF BTN(RIGHT) THEN ?"RIGHT"
40 IF BTN(LEFT) THEN ?"LEFT"
50 IF BTN(SPACE) THEN ?"SPACE"
60 IF BTN(88) THEN ?"X"
70 GOTO 10
そのほかのボタンはINKEYコマンドで押されたか判定できます。
【プログラム例】
10 K=INKEY()
20 IF K=30 THEN ?"UP"
30 IF K=31 THEN ?"DOWN"
40 IF K=29 THEN ?"RIGHT"
50 IF K=28 THEN ?"LEFT"
60 IF K=32 THEN ?"SPACE"
70 IF K=10 THEN ?"ENTER"
80 IF K=88 THEN ?"X"
90 IF K=89 THEN ?"Y"
100 GOTO 10
メニュープログラムを作って、ファイル0にセーブしておくことで、ファイル0以外のプログラムを起動することもできます。
【プログラム例】
*EEPROMは100~227まで対応しています。
*HetaPadだけでなく、通常のキーボードでも利用できます。
10 'FILE LOADER
20 F=1
30 CLS:?"=== EEPROM ==="
40 ?" アリ"
50 ?" ナシ"
60 ?"=============="
70 ?" ENTER";CHR$(225);"リストヘ"
80 LC0,F:?CHR$(225)
90 K=INKEY()
100 IF BTN(UP):F=1:GOTO30
110 IF BTN(DOWN):F=2:GOTO30
120 IF K=10:GOTO140
130 WAIT5:GOTO80
140 '
150 P=1:S=100:E=115:Y=1
160 '
170 CLS:?"=== FILE LOADER ==="
180 IF P=1:FILES0,3
190 IF F=1:FILESS,E
200 ?"==================="
210 ?" ENTER";CHR$(225);"RUN"
220 LC0,Y:C=SCR(0,Y):?CHR$(225)
230 K=INKEY()
240 IF BTN(UP):A=-1:GOTO280
250 IF BTN(DOWN):A=1:GOTO280
260 IF K=10:GOTO460
270 GOTO230
280 '
290 LC0,Y:?CHR$(C)
300 Y=Y+A:WAIT5
310 IF P=1 AND Y<1 THEN Y=1
320 IF P=7 AND Y>12 THEN Y=12
330 IF F=2 AND P=1 AND Y>4 THEN Y=4
340 IF Y<1:GOTO420
350 IF Y>20:GOTO370
360 GOTO220
370 '
380 IF P=1:S=S+16 ELSE S=S+20
390 E=E+20:P=P+1:Y=1
400 IF E>227:E=227
410 GOTO160
420 '
430 IF P=2:S=S-16 ELSE S=S-20
440 E=E-20:P=P-1:Y=20
445 IF P=6 THEN E=215
450 GOTO160
460 '
470 IF P=1 AND Y<5 THEN LRUN Y-1
480 IF P=1 AND Y>4 THEN LRUN S+Y-5
490 LRUN S+Y-1
次のオンラインショップでお求めいただけます。
また、自分で基板発注できる方は、以下のガーバーデータ・部品表をご利用ください。
HetaPadのガーバーデータを公開します。
ガーバーデータ は クリエイティブ・コモンズ 表示 4.0 国際 ライセンスの下に提供しています。自由にご利用ください。
© PCN Kitaharima.(http://kitaharima.pcn.club)
→ガーバーデータ(ZIP)
(寸法:99mm×89mm)