📟
LCDモジュールの使い方(I2C版)
I2C版では少ない配線で制御できる
I2C版の特徴
- バックライトの ON OFF をソフト側で制御できる
- GPIOが4本で済む (I2Cでなかったら8本必要)
- コントラスト調整が簡単 (I2Cモジュールが可変抵抗を装備している)
部品
モジュールについている青いのが可変抵抗。
配線
LCD 側 | Arduino 側 |
---|---|
SDA | A4 |
SCL | A5 |
GND | GND |
VCC | 5V |
ライブラリ
別途インストールする。
コード
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
lcd.init();
lcd.backlight();
}
void loop() {
lcd.home();
lcd.print("COUNT:");
lcd.print(millis());
}
- 画面サイズ 16 x 2 はオブジェクト定義時に指定する
- 最初に
begin()
ではなくinit()
を呼ぶ -
begin()
も用意されているが呼ばなくていいっぽい - バックライトが不要なら
backlight()
を呼ばないようにする
ドキュメントがない?
ヘッダファイルを見て察する。LiquidCrystal をベースとして使いやすくなっているように見える。
I2Cアドレスの知り方
A2 A1 A0 の状態で決まる。短絡していない状態が 1 になる。見ると短絡してないので 111 の 7 になる。ルールとして 0x20 から始まる。したがって 0x20 + 7 で 0x27 になる。
Discussion