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

しゃべるIchigoJamに小型液晶を追加する - AQM1602/AQM0802とのI2C接続 with IchigoJam BASIC

2018/04/04
#IchigoJam #maker 

しゃべるIchigoJamに簡単な文字表示だけつけてみます。
秋月で新発売で見かけたので買ってみた小型液晶「AQM1602Y-FLW-FBW」は、I2Cコントロール。
使うには、1uFコンデンサが2つ必要でした。
(接続方法参考:同型のAQM1602Y-RN-GBW取扱説明書大きめですが変換基板付きが便利です!)

しゃべりながら表示もするIchigoJam
(キーボードは、IchigoJamで使えるPS/2対応、日本語ふにゃふにゃキーボード、AOTECH FKBJ-86BL

初期化はこちら

LET[0],#38,#39,#14,#70,#56,#6C,#38,#C,#1:FORI=0TO8:POKE#700,0,[I]:?I2CW(#3E,#700,2):NEXT:RTN

続いて、文字表示はこのように(@マークは#40、文字書き込み用の指定で、実際表示されるのはABCの3文字)

?I2CW(#3E,"@ABC",4)

画面下段にカーソルを移動するには

POKE#700,0,#C0:?I2CW(#3E,#700,2)

画面クリア

POKE#700,0,1:?I2CW(#3E,#700,2)

モニタの画面の上16文字2行をそのまま小型液晶へ表示する

POKE#700,0,1:?I2CW(#3E,#700,2):POKE#700,#40:COPY#701,#900,16:?I2CW(#3E,#700,17):POKE#701,0,#C0:?I2CW(#3E,#701,2):COPY#701,#920,16:?I2CW(#3E,#700,17)

いろいろ自在に使えますね!
I2CWの返り値を ? で表示していますが、動作確認できたら R= などと置き換えてOKです。
AQM0802も横幅が違うだけで、ほぼ共通で使える気がします。なんと、320円!

前回のプログラムと混ぜて、しゃべりながら、小型液晶に表示するプログラムがこちら

5 GSB@LINIT 10 FOR I=0 TO 1 STEP 0 20 K=INKEY():IF !K CONT 30 ?CHR$(K);:GSB@LPUT 40 IF K>=ASC("a") AND K<=ASC("z") S="<ALPHA VAL=a>":POKE S+11,K:GSB@TALK 50 IF K>=ASC("A") AND K<=ASC("Z") S="<ALPHA VAL=a>":POKE S+11,K:GSB@TALK 60 IF K>=ASC("0") AND K<=ASC("9") S="<NUM VAL=0>":POKE S+9,K:GSB@TALK 70 NEXT 100 @TALK 110 R=I2CR(#2E,#700,1):IF R STOP ELSE IF PEEK(#700)!=ASC(">") CONT 120 R=I2CW(#2E,S,LEN(S)):R=I2CW(#2E,13) 130 RTN 200 @LINIT:LET[0],#38,#39,#14,#70,#56,#6C,#38,#C,#1:FORI=0TO8:POKE#700,0,[I]:?I2CW(#3E,#700,2):NEXT:RTN 210 @LPUT:IFN=16:POKE#700,0,#C0:?I2CW(#3E,#700,2):ELSE IFN=32 N=0:POKE#700,0,1:?I2CW(#3E,#700,2) 220 POKE#700,#40,C:?I2CW(#3E,#700,2):N=N+1:RTN

links
- AQM0802A-RN-GBW - I2C接続小型キャラクタLCDモジュール 8x2行
- AE-AQM1602A(KIT) - 大型16x2行 変換キット付き 550円
- I2C接続小型キャラクタLCDモジュールピッチ用変換基板 - 120円
- 秋月電子内をAQMで検索!

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