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

IchigoJam BASICリファレンス / 商店街のおまつりで体験会

2014/04/12 23:15:00
#IchigoJam #sabae 

明日は第二日曜日は、鯖江の月に一度の楽しいおまつりの日、誠照寺で開催される骨董市や地元グルメが集まる誠市と、その隣の鯖江商店街でいろんな催しものが集まるご縁市。今回、商店街の学生連携活動拠点らてんぽをお借りして、こども用プログラミング専用パソコン「IchigoJam」の初の一般公開です。時間は10時〜12時まで、ぜひ見学にどうぞ!

IchigoJamで始めるプログラミング、第一回の光をあやつろう第二回のシューティングゲームと入門編をやってきましたが、今回はIchigoJamで使えるBASIC言語の命令をひと通り紹介するリファレンス編です。

IchigoJamでつくろう、リファレンス編

命令解説対応
LED 式式が1なら光り、0なら消えるLED 1
BTN()ボタンが押されていれば1A=BTN()ver0.6
OUT 式外部出力OUT1-4への出力を0-15で指定する(出力は3.3V)OUT Aver0.6
IN()外部入力IN1-4の状態を0-15の数値で返す(入力ポートはプルダウン、繋がない時は0)A=IN()ver0.6
PRINT 式や文字列文字を表示する ";" で連結できる(文字列は"で囲む)PRINT "*"
INPUT (文字列,)変数キーボードからの入力で数値を変数にいれるINPUT "ANS?",Aver0.6
CLS画面を全部消すCLS
LOCATE 式,式次に文字を書く位置を横、縦の順に指定するLOCATE 3,3
VPEEK(式,式)書かれた文字コードを位置を横、縦の順に指定し取得するA=VPEEK(3,3)ver0.7.2
WAIT 式式の数値フレーム分待つ 60で約1秒WAIT 60
INKEY()キーボードから1文字入力する(入力がないときは0)K=INKEY()
RND(式)0から式の数未満の数をランダムに返すPRINT RND(6)ver0.3
CHR$(式)文字コードに対応する文字列を返すPRINT CHR$(65)ver0.7.4
式 + 式足し算するPRINT 1+1
式 - 式引き算するPRINT 2-1
式 * 式掛け算するPRINT 7*8
式 / 式割り算する(小数には対応していないので注意)PRINT 10/3
式 % 式割り算した余りを返すPRINT 10%3
式 & 式ビットマスクするPRINT 3&1ver0.7.2
式 ^ 式ビット反転するPRINT A^1ver0.7.2
式 >> 式右シフトするPRINT A>>1ver0.7.2
式 << 式左シフトするPRINT A<<1ver0.7.2
(式)カッコ内は優先して計算するPRINT 1+(1*2)
変数 = 式 ※式外アルファベット1文字を変数として式の値を入れるA=1
IF 式 (THEN) 次式が0でなければ次を実行する(THENは省略可)IF A=B LED 1
式 = 式 ※式内比較して等しい時に1を返す(==でも可)IF A=B LED 1
式 <> 式比較して等しくない時に1を返す(!=でも可)IF A<>B LED 1
式 <= 式比較して以下の時に1を返すIF A<=B LED 1
式 < 式比較して未満の時に1を返すIF A
式 >= 式比較して以上の時に1を返すIF A>=B LED 1
式 > 式比較してより大きい時に1を返すIF A>B LED 1
GOTO 行番号次に実行する行を決めるGOTO 10
GOSUB 行番号 / RETURN次に実行する行を決め、RETURNで戻ってくるGOSUB 100
ENDプログラムを終了するEND
SLEEPプログラムを休止する(BTNで復帰し最初から実行)SLEEPver0.7
RUNプログラムを実行するRUN
NEWプログラムを全部消すNEW
LIST (行番号1(,行番号2))プログラムを表示する、行番号指定可能LIST
RENUMプログラムの行数を10から10刻みにする(GOTO/GOSUBの飛び先は手で変更する必要あり)RENUMver0.6
LOADプログラムを読み出すLOAD
SAVEプログラムを保存する(ひとつのみ)SAVE


今回は大きめの基板に回路のわかりやすさ重視で実装してみました。配線を書いた紙を貼っておくと更に分かりやすいかもしれません。右側のキーボードから入力し、コンピューターに処理させ、左側からビデオやLEDで出力するイメージです。どっちかというと、左から右がいいのですが、自然なパーツ配置を優先するため、右から左へとしています。

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