秋月電子16文字x2行のI2Cインターフェース液晶AQM1602Y
8文字x2行のI2Cインターフェースの液晶表示器は
2021年7月2日:秋月の液晶表示器 ACM0802C-NLW-BBW-IIC、I2Cのプルアップ抵抗
で試していました。
今回は16文字×2行の
AQM1602Y-FLW-FBW (秋月電子)
これをあれこれと・・・
横幅44mm×縦25.5mmと16文字表示なのにたいへん小型。
※ACM0802は58×32mm
標準が電源電圧3.3Vで、5V電源でも使えるぞという仕様です。
ACM0802C-IICは昔からのHD44780と同じ制御手順ですが、
AQM1602は
・3.3Vと5Vで「booster circuit」を使うか使わないかを
設定しなくちゃならない。
・コントラストはコマンドで設定。
ボリュームじゃない。
・booster用のコンデンサが必要。
ということで、ちゃんと使おうとすると、ちょっと考えなけ
ればなりません。
※データシートやみなさんのサンプルを読み漁って
まず回路。 5V動作のArduino-UNOだとこんなつなぎ。
まず確かめておきたかったのが、I2C(SDA、SCL)ライン
のプルアップ抵抗。
AQM0802-IICでは、ドライブ能力の不足を感じたんで、
2.2KΩ→10KΩにしました。
抵抗を変えて波形を見てみると、今回のAQM1602も同じ
ようなドライブ能力でした。
4.7KΩだとレベルが上がり、ちょっと気になる0.75Vほど。
10KΩで0.43V、22KΩで0.33V。
※10KΩでOKでしょう。
もう一つがbooster circuit:チャージポンプのコンデンサ。
3.3V電源だとこれを働かせるんで必須ですが、これをオフに
する5V電源だと省けるのではないか?という確認です。
※省けました。
VOUTのまで外すと0.5V(p-p)くらいの
リップルが見えますが、見栄えや動作に
は関係なしでした。
さらにどうなるか気になったのがコントラストの
設定値。
6bit:0~63の値で設定できます。
秋月のリーフレットには
『5Vの場合35で少し濃いめ』と記されています。
これを見ておきます。
まず5V電源から。
右下の「<>」内の数字がコントラスト設定値。
右上の0~9は「生きてるよ」表示。
1秒ごとにインクリメント。
コントラスト設定値が5あたりから文字が出始めます。
30を越えると最大の63までほとんど変化なし。
真っ黒になって見えなくなるということはありません
でした。
次が3.3V電源。
※5Vと同じバックライトLED駆動抵抗です
ので、少し暗くなってます。
20を越えたあたりから文字が見え出して(背景白から)
40を越えると背景が黒に。
5Vでも3.3Vでも、秋月の言う「35」あたりで良いのかと。
3.3V電源でのコントラストを変えると、VO電圧と
VOUT電圧が次のように変化します。
・Follower control : FON = 1 Rb2,1,0 = 1,0,0
・Power control : Bon = 1
コントラスト VO VOUT
設定値 電圧 電圧
--------------------------
0 2.40V 6.52V
16 3.44V 6.51V
32 4.48V 6.49V
48 5.52V 6.47V
63 6.42V 6.42V
Bonをオンする3.3V動作では、電源電圧3.3Vの
約2倍(近く)の電圧がVOUTに出ています。
Bonオフの5Vでは5Vより少し低い電圧のままで
ほとんど変化はありませんでした。
・コントラスト設定テストプログラム Arduino-UNO用
ダウンロード - test_i2c_aqm1602y_a.zip
※Arduino-IDEのシリアルモニターは1行をバッファ
するので、単純に1文字出力する「Tera Term」など
のターミナルを使って。
数字入力1と0でコントラスト値を+/-。
※beginの時に文字数、行数に加えて使用電圧区分を設定
LCD.begin(16, 2, LCD_V5R0); // LCD初期化 文字数、行数設定 (16文字x2行) 5.0V電源
// LCD.begin(16, 2, LCD_V3R3); // LCD初期化 文字数、行数設定 (16文字x2行) 3.3V電源
5Vの時はbooster circuitをオフ。「Bon=0」に。
3.3Vの時にBon=1。
※「void setContrast(uint8_t n);」でコントラスト(0~63)を設定。
「uint8_t getContrast();」で現在のコントラスト値を読み出し。
※追記
booster circuitオン時の電源電圧とVOUT電圧。
コントラスト設定値は35で。
最大定格ではV0=7.0Vとなっています。
booster circuitをオンすると電源電圧の約2倍の
電圧がVOUTに出てきます。
電源電圧 VOUT電圧
------------
3.3V 6.45V
3.4V 6.66V
3.5V 6.84V
3.6V 7.04V
3.7V 7.22V
3.8V 7.43V
3.9V 7.63V
4.0V 7.82V
※これ以上にするのは怖かったんでストップ。
| 固定リンク
「Arduino」カテゴリの記事
- Arduino、analogWriteは捨てちゃえ。ちゃんとしたPWMの例(2025.03.22)
- パルスジェネレータをI2C液晶で動かす(2025.01.28)
- EEPROMを使ったシリアル受信バッファ 512kバイトに増設(2024.12.26)
- 1/nカウント方式とDDS方式の2相パルス発生回路(2024.10.13)
- おっと。map関数の計算桁に注意(2024.10.06)
コメント