シリアル通信でPCに転送する……終了
IchigoJamのプログラムを保存するには
SAVE ファイル番号 保存
LOAD ファイル番号 読込
ファイル名ではないことに注意
ファイル番号0〜3でIchigoJam内のメモリ
ファイル番号を省略すると直前に使用した番号
1行目に 'プログラム名 を入れておく。
FILES ファイル番号(,ファイル番号) で1行目が表示される。
FILE()関数 直前にSAVE LOADしたファイル番号を返す
LRUN ファイル番号 ファイルをLOADしてRUN
LRUN FILE()+1 で次のファイルを実行できる。
保存できるプログラムは4つ。これを拡張するのがEEPROM
拡張コネクタ、5ピンのソケットがついています。
ここには +5v SDA SCL +3.3v GND が出ていて、I2C規格での通信ができます。
IchigoJamBASICはI2C規格で"EEPROM"というチップと通信をして、プログラムの保存・読込ができます。
プログラムは1KByteまでなので、1ファイルで8Kbitを使用します。
1024KbitのEEPROMだと1024÷8=128個のファイルが保存できます。
ファイル番号は100〜(容量÷8-1) 1024Kbitだと100〜227
EEPROM Pin
1 A0 L(GND)
2 A1 L(GND)
3 A2 H(VCC) 512Kbit以下の場合はL(GND)
4 GND GND
5 SDA SDA 2.4kΩでプルアップ
6 SCL SCL 2.4kΩでプルアップ
7 WC L(GND) H(VCC)でライトプロテクト
8 VCC VCC(3.3V)
1 A0 U VCC 8
2 A1 WC 7
3 A2 SCL 6
4 GND SDA 5
IchigoJam EEPROMで検索
ところが、IchigoJamははじめ、拡張ソケットを持っていなくて、14ピンのソケット2つI2Cデバイスも接続するように鳴っていました。
IN3-SDA
SCL-SCL 旧バージョンではEX1
GNDと+3.3Vも接続、+5vは不要
なので、拡張ソケットの順番にピンが出ている製品がなかなかないのです。
IchigoJam用外部記憶装置キット IchigoROM
I2Cの端子は拡張用
L字ピンヘッダを半田付けして、拡張ソケットに挿す
横に不要なランドが並んでる。ライトプロテクトも必要ない。
参考:イチゴジャムレシピ
A0 A1 A2 はデバイスのアドレス設定 1024KbitのEEPROMは+3.3vに接続して固定
容量は1024Kbitのチップのみとする。
常時書き込み可にしてライトプロテクトスイッチは廃止
こうなった
KiCADデータ・ガーバーデータzip入り
EEPROM:24FC1025-I/P 1Mbit
10 'EEPROM MEMU 20 M=1024/8-1:L=20:P=0:F=0 30 @F:CLS:LC0,0,1 40 ?"EEPROM MENU 100-";100+M 50 S=F/L*L:E=S+L-1:IFE>M E=M 60 P=F/L:LC0,2 70 FILES 100+S,100+E 80 @S:LC0,2+F%L,1 90 K=INKEY():IF!KCONT 100 IF K=10 LRUN 100+F 110 IF K=30 F=F-1 120 IF K=31 F=F+1 130 IF K=28 F=F/L*L-L 140 IF K=29 F=F/L*L+L 150 IF F<0 F=0 160 IF F>M F=M 170 IF P<>F/L P=F/L:GOTO@F 180 GOTO @S
EEPROM 型番 32Kbit AT24C32A AT24C32AN AT24C32B AT24C32C 64Kbit AT24C64A AT24C64B 24FC64 24LC64 128Kbit AT24C128 24LC128 BR24G128 256Kbit AT24C256 AT24C256B 24FC256 24LC256 BR24G256 512Kbit AT24C512 AT24C512B AT24C512N 24LC512 CAT24M01 1024Kbit 24FC1025 24LC1025