福野泰介の一日一創 - create every day

NHKこどもプログラミング番組スタート! IchigoJamに128x48グラフィック液晶をつなぐ

2016/02/23
#KidsIT #IchigoJam 

いよいよこどもプログラミング教育が本格化してきました。「プログラミング番組 on NHK!
Facebookグループ「IchigoJam-FAN」のメンバーも1,000人!

もっと手軽に、もっと楽しく使えるIchigoJamを目指して、あれこれ相談。
楽しくなりそうです!

こちら「超小型グラフィックLED AQM1248A」をひとまずIchigoJam BASICで制御。

解像度は128x48、通常のIchigoJamの幅は半分、高さは1/4ですが、8x8のキャラクターが16文字x6行表示できるので、ロボット制御プログラミングなどに使えるようにするのも良さそう!

ちょっと大人っぽく、ver1.2のラベルを使ったプログラム、ver1.1では行番号に置き換えてつかってください。 コンパイル不要で、その場でダイレクトに制御を試せる環境、大人にもうれしいBASICです。

1 'mini LCD 10 GOSUB@INIT:GOSUB@CLS:GOSUB@MAIN:END 100 @INIT:LET[0],#AE,#A0,#C8,#A3,#2C,-2,#2E,-2,#2F,#23,#81,#1C,#A4,#40,#A6,#AF,-1 110 FOR J=0 TO 100:N=[J]:IF N>=0 GOSUB@SPIC ELSE IF N=-2 WAIT1 ELSE J=100 120 NEXT:RTN 200 @SPIW:FOR I=7 TO 0 STEP -1:OUT1,0:OUT2,N&(1<<I):OUT1,1:NEXT:RTN 300 @SPIC:OUT4,0:OUT3,0:GOSUB@SPIW:OUT4,1:RTN 400 @SPID:OUT4,0:OUT3,1:GOSUB@SPIW:OUT4,1:RTN 500 @PUTC:FOR J=0 TO 7:N=0:FOR K=0 TO 7 510 IF PEEK(C*8+K)&(1<<J) N=N+1<<K 520 NEXT:GOSUB@SPID:NEXT:RTN 600 @CLS:FOR K=0 TO 7:N=`10110000+K:GOSUB@SPIC:N=`00010000:GOSUB@SPIC:N=0:GOSUB@SPIC:FOR J=0 TO 127:N=0:GOSUB@SPID:NEXT:NEXT 700 @LCXY 710 N=`00010000+X>>4:GOSUB@SPIC:N=X&#F:GOSUB@SPIC 720 N=`10110000+Y:GOSUB@SPIC 730 RTN 1000 @ICHIGOJAM 1010 LET[0],`11111,0,`11100,`10100,`10100,0,`11111,`100,`11100,0 1020 LET[10],`11101,0,`1011100,`1010100,`1111100,0,`11100,`10100,`11100,0 1030 LET[20],`10000,`10000,`11111,0,`11100,`10100,`11100,`10000 1040 LET[28],`100,`11100,`100,`11100,`100,`11100 1050 N=0:FOR J=0 TO 3:GOSUB@SPID:NEXT 1060 FOR J=0 TO 33:N=[J]<<1:GOSUB@SPID:NEXT 1070 N=0:FOR J=0 TO 3:GOSUB@SPID:NEXT:RTN 1100 @MAIN 1110 FOR L=0 TO 10:X=RND(128-34-8):Y=RND(6):GOSUB@LCXY:GOSUB@ICHIGOJAM:NEXT:RTN

※下記全部いれると容量オーバーするので、1000行の配列代入をダイレクトモードで実行するなど削減措置が必要です

IchigoJamとランダムに表示していく様子

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像