以前作った8入力ボード
www.ichigojaman.jp
を使って、小さい子向けに8個のボタンを押して遊べるボックスを作りました。
ボタンを押すとそれぞれのアクションが起きます。
動画はこちら。
www.youtube.com
アルミケースを加工して、8個のボタンスイッチを配置。
8個のボタンの入力信号を、8入力ボードで受け。
サウンド出力を出したいので、マイコンはIchigoCakeを使います。
材料
プログラム
- それぞれのキャラクターが表示されます。1回押すと表示、もう1回押すと消えます。
- ドレミファソラシドの音階を奏でます。
- 下のカウント数が1~8ずつ増えます。99を越えると1けたに戻ります。
いろいろ動かしてみた後で、以下のミッションに挑戦してみよう。
- 8個のキャラを全部表示してみよう
- 数字を99にしよう
- 8個のキャラを全部表示&数字を0にしよう
- 好きな曲を鳴らしてみよう
※(11/20変更)スタート時に8個のキャラを表示するように変更(展示する時に黒い画面だと「動いていない」と誤解されるため)
10 @ARUN:'*BUTTON8 20 CLV:CLO:CLS 30 LET [64],"C","D","E","F","G","A","B","<C" 40 LET [72],249,240,241,243,235,236,237,255 50 FOR N=0 TO 7 60 S=[72+N]*8 70 FOR C=0 TO 7 80 D=PEEK(S+C):E=N*8+C:M=128 90 FOR B=0 TO 7 100 [E]=[E]+M*(D&M>0) 110 M=M>>1 120 NEXT 130 NEXT 140 NEXT 150 LC 15,17:?0; 160 FOR P=0 TO 7 170 X=P%4*8:Y=P/4*8:A=P*8 180 [80+P]=1:GSB @C1 190 NEXT 200 @LOOP 210 FOR P=0 TO 7 220 OUT P 230 IF !IN(2) GSB @ACT 240 NEXT 250 GOTO @LOOP 260 @ACT 270 PLAY [64+P] 280 Q=Q+P+1 290 IF Q>99 Q=Q-100 300 LC 15,17:?Q;" "; 310 X=P%4*8:Y=P/4*8:A=P*8 320 [80+P]=![80+P] 330 IF [80+P] GSB @C1 ELSE GSB @E1 340 IF SOUND() CONT 350 P=(P-1)&7 360 RTN 370 @C1 380 FOR C=0 TO 7 390 D=[A+C]:M=128 400 LC X,Y+C 410 FOR B=0 TO 7 420 ?CHR$(D&M>0); 430 M=M>>1 440 NEXT:? 450 NEXT 460 RTN 470 @E1 480 FOR C=0 TO 7 490 LC X,Y+C 500 ?CHR$(0,0,0,0,0,0,0,0) 510 NEXT 520 RTN
★210~240行の4行を、
210 P=INKEY()-49 220 IF P>=0 AND P<=7 GSB @ACT
の2行に改造すると、キーボードの1~8の数字キーを押して動かせます。
プログラムの動作テストができます。