« RZ1Peek v0.1.2 公開 | トップページ | 勝手にグッズ(5) »

あれこれ考えてみる(陰であんなことやこんなことしちゃう...)

赤外線リモコンを用いたプログラムは、メインループの中で、REMOCONコマンドで、押されたボタンの値を受け取って、それに応じた処理を行う形でプログラミングになっていると思いますが、ロボットが動いている間に、リモコンのボタンを押しても反応する訳ではありませんよね。ま、当たり前ですが

この前の「もう待てない」で書いたのと同じようなことなんですが、ロボットが動いている陰で、変数の値を変更してみようかと思います。

そんな使い方する為の説明として、いいサンプルコードとは言えないんですが、以下の様なコードを転送します。

DIM A AS BYTE
DIM B AS BYTE

A
=0
B
=0
MUSIC "C"

MAIN:
IF B>0 THEN
A
=B
B
=0
ELSE
A
=REMOCON(1)
ENDIF

IF A=1 THEN
MUSIC "C"
ELSEIF A=2 THEN
MUSIC "D"
ELSEIF A=3 THEN
MUSIC "E"
ELSEIF A=4 THEN
MUSIC "F"
ELSEIF A=5 THEN
MUSIC "G"
ELSEIF A=6 THEN
MUSIC "A"
ELSEIF A=7 THEN
MUSIC "B"
ENDIF

Delay 2000
A
=0

GOTO MAIN

陰で変数の値を変更します。

Rz1basicscreensnapz031_2そのひとつの方法として、RZ1Basicのツールウインドウにある、赤外線リモコンのボタンをクリックします。表示された赤外線リモコンウインドウの下の方を見ると「Simulation REMOCON(n)」となっているかと思いますが、この辺りを右クリックし、COM #2 (0x0141)を選択します。
Rz1basicscreensnapz032
Rz1basicscreensnapz033

  • 今回やりたいのは、シミュレーションでなく、通信なので、「COM」を選択します。
  • 上のサンプルコードの場合、陰で「B」の値をコントロールします。「B」の値は2番目に定義された変数なので、「#2」を選択します。0x0141は、2番目の変数の値が格納される番地のことです。

赤外線リモコンのボタンを押した時と、RZ1Basicの赤外線リモコンウインドウのボタンをクリックした時と、違いを体感してみてね

要するに、「処理中に、裏で次の処理を指定しておく為の方法の紹介」って感じかな

今回はあまりいいサンプルコードとは言えませんが、「あれこれ考えてみる」のコーナーでは、具体的にどうこうということではなく、紹介したことがワークショップ的に何かに役立っていけばいいなぁと思ってます。

----------------
にほんブログ村 科学ブログ ロボットへ
にほんブログ村

|

« RZ1Peek v0.1.2 公開 | トップページ | 勝手にグッズ(5) »

工作・改造・解析」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: あれこれ考えてみる(陰であんなことやこんなことしちゃう...):

« RZ1Peek v0.1.2 公開 | トップページ | 勝手にグッズ(5) »