Enjoy programming more!
Kidspod is a post site which supports young programmers.
First step to join us.
Register as a member
For members

2019/07/26 10:26:05

MixJuice GET URL : kidspod.club/mj/881

JamPot IchigoJam用通信ターミナルマクロ

USBシリアルインターフェイスでPCとIchigoJamを接続し
BASICのプログラムを通信します。

接続タブでシリアルインターフェイスを検索して、接続する。
ワークシートのCOMにポートを記述しておくと起動時に接続をします。
テキストボックスに入力してEnterで送信。
選択したセルの内容を操作します。
受信 LISTを送信して、出力される文字列を選択したセルから下に入力
OKを受信したら終了
   E0-FFはPCで表示できないので、~16進数に置換。
送信 選択したセルを、IchigoJamに送信
   文字間、行間にミリ秒単位で待ち時間を入れる。
   空のセルは無視。
   REMから始まるセルは送信しない。
保存 選択したセルを結合してテキストファイルに保存
読込 選択したセルから下へテキストファイルを読み込み
分割 選択したセルを最初のスペースで分割する。隣の列を挿入して書き込む。
結合 選択したセルを左側のセルに結合する。右側の列を削除
最下選択 アクティブセルのある列の一番下のセルまで選択 途中に空白を含む
終端選択 アクティブセルからシートの使用しているセルの範囲を選択

@コマンド
MIXJUICEやPANCAKEのように @コマンドを受け取り、データを送信するエクセルのマクロプログラム。

@CW X Y L H
X,Y セルの位置 L横方向のセル数 H縦方向のセル数
IchigoJamから@コマンドを送信
続いてデータを送信してセルに書き込み

@CR X Y L H
X,Y セルの位置 L横方向のセル数 H縦方向のセル数
IchigoJamから@コマンドを送信
セルのデータを読み出して送信します。

SOURCE CODE

プログラムをみる で サイトにリンクしています。
リンクをクリックすると JamPot.xlsmがダウンロードされます。

@コマンドのサンプルプログラム [0]~[99]に乱数を入れ、エクセルに送信・受信します

10 CLS:CLK:UART1
20 FORI=0TO99:[I]=RND(100):NEXT
25 GSB@PRT
30 LC0,0:?"@CW 3 2 10 10"
40 FOR I=0 TO 99
50 ?[I]
60 NEXT
70 FORI=0TO100:[I]=0:NEXT
80 LC0,0:?"@CR 3 2 10 10"
90 FOR I=0 TO 99
100 LC0,0:?CHR$(12)
110 LC0,0:INPUT"",A
120 [I]=A
130 NEXT
140 CLS:GSB@PRT
150 END
160 @PRT
170 FORL=0TO9
180 FORH=0TO9
190 ?[H*10+L];" ";
200 NEXT:?
210 NEXT
220 RTN

ワークシートのA1に=TEXT(NOW(),"hh:mm")を書き込み
演算の結果を受け取ります

10 VIDEO3:UART1:CLS
20 ?"@CW 1 1 1 1"
30 ?"=TEXT(NOW(),`hh:mm`)"
40 CLS
50 LC0,-1:?"@CR 1 1 1 1"
60 LC4,5:INPUT "",A
70 WAIT1800
80 GOTO40

COMMENT