forked from fu-sen/IchigoJam-BASIC
-
Notifications
You must be signed in to change notification settings - Fork 0
/
I2CW.txt
executable file
·45 lines (38 loc) · 2.09 KB
/
I2CW.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
I2CW
IchigoJam BASIC 0.9.9~
IchigoJam BASIC RPi
IchigoJam PC 非対応
-----------------------------------------------------------
[ 機能 ]
メモリに入れている値を
I2C シリアルバスで接続されたデバイスへ送ります
[ コマンド 書式 ]
<返し値>=I2CW(<I2C アドレス>,<コマンド開始番地>,<コマンド長さ>,<書込メモリ開始番地>,<書込メモリ長さ>)
<返し値>=I2CW(<I2C アドレス>,[<コマンド開始番地>,<コマンド長さ>,]<書込メモリ開始番地>,<書込メモリ長さ>) (1.2b42~)
[ 例 ]
R=I2CW(`1010000,#700,2,#702,16)
R=I2CW(`1010000,#700,16) (1.2b42~)
[ 解説 ]
<I2C アドレス> は I2C 経由で情報を送るデバイスです。
I2C デバイスには A0~A2 端子の接続に応じて
固有のスレープアドレスを持ちます。これを指定します。
値は 0~127(`0000 000 ~ `1111 111)です。
これに READ/WRITE ビットの WRITE を付加し送信します。
READ/WRITE ビットを含めない値になる事にご注意下さい。
その後 <コマンド開始番地> から <コマンド長さ> にあるコマンド、
<書込メモリ開始番地> から <書込メモリ長さ> にある
データを送信します。
<コマンド開始番地> <書込メモリ開始番地> は
IchigoJam から渡す値を入れたメモリの場所です。
<コマンド長さ> <書込メモリ長さ> はバイト単位で長さを示します。
POKE で予め値を入れておいた後に I2CW でデータを送信します。
1.0.0 beta2 まで採用されていた I2C は
1.0.0 beta3 では I2CR とこの I2CW に変更されました。
I2C を用いていたプログラムは変更するか、
VER() を用いてコマンドを分けて下さい。
1.0.0 beta11 で Esc キーを押す事で
送受の中断を行えるようになりました。
1.2b42 より、<コマンド開始番地> <コマンド長さ> を
省略できるようになりました。
これによりコマンドとデータを分けずに
送出できるようになりました。