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

先行公開した IchigoJam webに、続き、マイコン(LPC1114)バージョンのファームウェアを公開!
IchigoJam 1.3b02.zip」 (* 最新版は 1.3b3)
容量削減、がんばりました!

一番目立つ点は、Nが続く文字をコンマで区切る日本式ローマ字に対応し、打っている途中の文字も表示するように変更したところ。 その他、いろいろと細かい修正、調整を行い、近日正式版のリリースとなる予定です。


標準搭載となった IOT.OUT / IOT.IN コマンド、I2C用の送受信バッファを別に確保したので、配列と合わせて使っても大丈夫!

I2C実装の問題で動作しなかった 温湿度計 AM2320 (600円@秋月電子) にも対応。

10 'AM2320 20 CLS:A=#5C:B=#700:POKE B,3,0,4 30 W=I2CW(A,B,3,B+3,0) 40 R=I2CR(A,B,0,B+3,8) 50 IF R ?"I2C ERROR":GOTO 200 60 H=PEEK(B+5)*256+PEEK(B+6) 70 M=PEEK(B+7)>=128 80 T=PEEK(B+7)&#7F*256+PEEK(B+8) 90 IF H<0 ?"NO DATA":GOTO 200 100 CLS 110 ?"HUM: ";H/10;".";H%10;"%" 120 IF M ?"TMP:-"; ELSE ?"TMP: "; 130 ?T/10;".";T%10;"dC" 140 ?"MEM:";:FORI=0TO8:?PEEK(B+I);" ";:NEXT:?"" 200 WAIT 60:GOTO 30

今までのメモリマップに加えて、下記のメモリ領域が使えます。
つまり、ver1.3 では、上記プログラム、B=#110C とすることで、PCGも配列もVRAMも破壊せずに、使えます。(* b3でアドレス変更になりました)

32byte確保してある、I2Cバッファの先頭アドレスは、#110C、I2Cと覚えやすい! (b3でアドレス変更になりました)

また、#700は、LPC1114の物理RAMアドレスの先頭 0x10000000 へと移しました。
結果、マシン語使用時に、レジスタ R1 として渡される値は、必ず 0x10000000 - 0x700 となります。
1.3以降専用で作る場合、ちょっと楽できますね!
はじめてのマシン語 - IchigoJamではじめるArmマシン語その1

今後の IchigoJam のメジャーバージョンとなる予定です。不具合、ご要望など、お寄せいただけるとうれしいです。
Facebook IchigoJam-FAN、Twitter #IchigoJam、メール ichigojam@jig.jp まで!

links
- 定数行番号のRENUMに一部対応! わずか24KBのOS、IchigoJam 1.3 beta 3

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