LEDでナナイロづくり 2

7.イルミネーション

JPW2022用の体験プログラム(LED8個用)に、少し改良を加えました。
このプログラムは、変数にLEDの色や動きを設定するだけで、簡単にイルミネーションを作ることができます。
タクトスイッチを押すと、イルミネーションの動きを一時停止します。
12個のLEDサークルを使うときは、色パターンを12文字分設定します。

変数の意味はつぎのとおりです。
 1.変数S:色パターン(0から7の文字が色コード、文字位置がLED位置)
 2.変数L:LEDの明るさ(1~255)
 3.変数R:LEDの移動数=R値の個数分のLEDを右にひとつ移動する。負数なら左にひとつ移動)
 4.変数W:LEDの光を移動する時の時間間隔(1/60秒:60=1秒)

10 @ARUN:’JPW NANAIRO2022
20 CLS:CLV
30 S=”123456712345″ 色パターン(使用するLED数分を指定)
40 L=50 LED明るさ
50 R=LEN(S) LED移動数
60 W=60 LED移動間隔
70 ‘
80 GSB @STR_WS.LED(S,(I,C,L))
90 WS.LED LEN(S)
100 WAIT W
110 GSB @SHIFT_WS.LED(R)
120 IF BTN() CONT
130 GOTO 90

※以下のサブルーチンも入力します。
@SET_WS.LED(I,C,L)サブルーチンを1000行目から
@STR_WS.LED(S,(I,C,L))サブルーチンを3000行目から
@SHIFT_WS.LED(R)サブルーチンを4000行目から

IchigoJamのWS.LED命令は34個までしか点灯設定できません。
クリスマスツリー用イルミネーションなど、数の多いフルカラーLEDを使いたいときは90行目を、
WS.LED LEN(S),10
のように繰り返しオプションを付けます。


12個のLEDサークルをイルミネーションのように光らせるプログラムです。
全部で3種類の色パターンを、順番に光らせます。
そのうち2種類は、交互に回転と逆回転を繰り返します。

10 @ARUN:’JPW NANAIRO-LED 2
20 CLS:CLV
30 S=”112233445566″
40 W=60
50 L=50
60 R=LEN(S)

70 GSB @STR_WS.LED(S,(I,C,L))
80 WS.LED LEN(S)
90 WAIT W*3

100 FOR M=1 TO 12
110 GSB @SHIFT_WS.LED(R)
120 IF R>0 WS.LED 12:WAIT W/5
130 IF R<0 WS.LED 2,6:WAIT W
140 NEXT
150 WAIT W
160 R=-R
170 IF R>0 S=”666655554444333322221111″:R=LEN(S)
180 IF R<0 S=”123456712345″:R=-LEN(S)
190 GOTO 70


※以下のサブルーチンも入力します。
@SET_WS.LED(I,C,L)サブルーチンを1000行目から
@STR_WS.LED(S,(I,C,L))サブルーチンを3000行目から
@SHIFT_WS.LED(R)サブルーチンを4000行目から