SHIROのIchigoJam日記

IchigoJamの電子工作とプログラミングをメインに

デジタル名札「IchigoName」

11/28に金沢のマルツ金沢西インター店で開かれたIchigoJam工作教室に参加しました。
工房Emerge+のアクリル板やIchigoDotを持ち込んで、デジタル名札「IchigoName」を作ってみました。

標準状態では名前をスクロールして表示していますが、ボタンを押すとローダーメニューになります。
ジョイスティックの上下で数字(1〜3)を指定して、ボタンを押すと内蔵スロット1〜3のプログラムを起動します。
プログラムは以下のとおりです。なお動作にはジョイスティック(OUT2ポートにY軸入力)が必要です。
また、IchigoDotのファームウェアを「IchigoDotS」に書きかえています。

1 '*Name64J
2 UART1:CLS:?:CLV:L=1:OUT2,-1:WAIT60:G=1:?"MATLED ROTATE 1"
3 LET[0],#26,#49,#32,0,#7F,#08,#70,0,#7A,0,#78,#10,#08,0,#30,#48,#30,0,0,#26,#49,#32,0,#7E,#09,#7E,0,#7F,0,#01,#7F,#01,0,#3E,#41,#3E,0,0
4 ?"MATLED PUSH ";[C]:WAIT10:C=C+1:IFC>37C=0
5 IF!BTN()GOTO4
6 BEEP
7 LET[0],0,0,0,0,0,0,0,0,0,0,7,5,5,5,7,1,1,1,1,1,7,1,7,4,7,7,1,7,1,7
8 ?"MATLED ROTATE 0":GSB18:N=G
9 IFBTN()GOTO9
10 GSB16:CLT
11 IFTICK()>30GSB16:CLT
12 GSB14:IF!BTN()GOTO11
13 GSB17:BEEP:LRUNG
14 N=G:J=(511-ANA(6))/300*L:N=N+J:IFN<1N=3ELSEIFN>3N=1
15 IFN<>GGSB17:G=N:WAIT20:GOTO14 ELSERTN
16 D=10+N*5:FORY=0TO4:[Y]=[Y]^[D+Y]:NEXT:GSB18:RTN
17 D=10+N*5:FORY=0TO4:[Y]=[D+Y]:NEXT:GSB18:RTN
18 ?"MATLED SHOW ";:FORY=0TO7:IF[Y]<16?0;
19 ?HEX$([Y]);:NEXT:?:RTN
3行目の配列変数の値は、名前の文字を縦1列ずつセットしています。好みで変えてください。