« ADCの機能差 ATtiny402とATtiny1614 | トップページ | 「三菱電機技報」・・・秋の夜長に »

2025年10月21日 (火)

8文字×2行のI2C液晶表示器に注意

ADCの機能差 ATtiny402とATtiny1614
この記事は、
 「データーシートは最新のを読むんだ!」が教訓に
なりましたが、今回も似たような教訓です。
 「同じと思うな」
 「隅から隅まで読むんだ」
のサンプルです。

液晶表示器、昔はパラレル接続のを使っていましたが、
最近は2本線でつなげるI2C接続のものばかり。

そんな中、「8文字×2行」の液晶表示器で「ありゃまぁ」
な事態に遭遇しました。

パラレル接続のACM0802やACM1602は、文字コード0x00~0x07の
部分にユーザー定義文字を入れられます。
  0x08~0x0Fには同じデータが入るので
  0x00も0x08も同じ文字が表示される

インターフェースがI2Cで16文字×2行のAQM1602YやAQM1602XA
はCG RAMの文字コードが0x00~0x07で、0x08~0x0Fの
重なりがなくなりました。

そして、8文字×2行のI2C液晶ACM0802C(コントラスト調整に
ボリュームが必要な形式)はパラレル接続のACM0802と同じ
ようにCG RAMの文字コードが0x00~0x07で、0x08~0x0Fの
重なりが残っています。

ところが同じ8文字×2行のI2C液晶でも、AQM0802A(30x20mmと小型)
のCG RAMは0x00~0x05までの6文字で、0x06と0x07には固定
文字「↓」「→」が入っているのです。

8文字のユーザー定義文字が使えると思っていたら、
0x06と0x07の文字が「あれれ?」っとなってしまったのです。

これがI2C・16文字×2行液晶の表示キャラクタ。
B2_20251021175001

そして、8文字×2行のI2C液晶AQM0802Aの表示キャラクタ。
B1_20251021175001
0x06と0x07は固定文字「↓」と「→」で埋まっています。
「似たようなもんなんで同じやろ」っと
いう思い込みは通用しませんでした。

こんな電池マークとバー表示(0本~5本)をしたかった。
Ax321
Ax11

バー表示、0本は0x5Fのアンダーバー。
1本は0x0Bの「L」字を使って、2本,3本,4本,5本の
4つをユーザー文字。
そして残り2つで電池マーク。

|

« ADCの機能差 ATtiny402とATtiny1614 | トップページ | 「三菱電機技報」・・・秋の夜長に »

トラブル遭遇」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




« ADCの機能差 ATtiny402とATtiny1614 | トップページ | 「三菱電機技報」・・・秋の夜長に »