【Arduino】LCDを使ってみる (1)

電波時計云々の時に思い付いたんだけど、そういやキットで買ったArduinoにLCD付属していたな と。

 

【Arduino】ついに手を出してしまった

 

 

 

これを時計にするかどうかは別として、LCDに文字を表示させてみたくなった。

 

チラッと調べてみた限りLCDに表示するために、面倒な回路を組まないといけないようだ。

深入りすると溺れる可能性が高いので、なるべく避けたいところ。

キットなら必要部品も回路もあるから安心だ。

早速キットのマニュアルを読む。

 

・・・それだけ?

え・・・それだけ?

 

見た感じ、5V、GND、A4、A5だけ?

 

 

モジュール登場

 

ひとまずLCDを箱から出そう。

 

16x2のキャラクタ液晶

よく見かける(?)16x2のキャラクタ液晶

 

裏向けると

 

なんか付いてた

I2Cアダプターが付いてた

 

流石入門キット。非常にありがたい。

更にスケッチも用意されている。

至れり尽くせりである。

 

 

スケッチ

 

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display
void setup()
{
lcd.init(); // initialize the lcd
lcd.init();
// Print a message to the LCD.
lcd.backlight();
lcd.setCursor(3,0);
lcd.print("Hello, world!");
lcd.setCursor(2,1);
lcd.print("keyestudio!");
}
void loop()
{
}

 

コンパクト。

これ、ソースにこの状態で書いてあった。

インデントしろよ。

 

一応ソースは把握しておこう。

3行目にしていきなり謎。

LiquidCrystal_I2C lcd(0x27,16,2);

lcdの引数がアドレス、横のキャラクタ数、縦のキャラクタ数なのはわかるけど

何故アドレスが0x27なんだ?

説明なしか?

わかったよググるよ(半ギレ

 

I2Cアダプターにはポテンショ(青いヤツ)の下にアドレス設定用のパターンがあって

全てオープンにするとアドレスが0x27になる ということらしい。

何故0x27なのか、アドレスを何に使うのか が不明なままだけど、深入りはしない。

 

ArduinoのA4、A5はそれぞれSDA、SCLになるので、それに結線するだけ。

 

 

・・・よくわからん。

 

 

 

lcd.init(); // initialize the lcd
lcd.init();

なんで2回イニシャライズするんだよ。

なんで2回イニシャライズするんだよ(再

 

1回で良い。

 

 

あとはsetCursorで場所を指定してprintで文字を表示させている。

なるほど。これなら俺でもわかる。

 

というわけで、これをコピペしてちょっと変えて・・・ライブラリがないので怒られた。

 

 

PlatformIOでライブラリ追加

 

PIOのホーム画面から追加する。

 

Libraries

Librariesをクリック

 

検索する

検索すると何故か複数件該当して困るw

 

・・・ので一番ダウンロード数が多いのにした。

 

 

Add to Projectをクリック

Add to Projectをクリック

 

あとはよろしくやってくれる。

 

 

画面表示

 

あとはスケッチをArduinoに流して表示されるはず。

 

OK

OK(・∀・)

 

カテゴリー: Arduino系, ガジェット タグ: , , ,  [パーマリンク]

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です