なんか、調子悪いんですよ。付属品の LCD。
妙に安定性が悪い。表示するまでに時間が掛かったり、まったく表示しなかったり。
ドライバーのせいなのかと思ったり。
LCD を osoyoo Web に従い導入してみる。
① Step 1: Download LiquidCrystal_I2C.zip library file and Install I2C library:
ここで LiquidCrystal_I2C ライブラリを導入するように指示がでるのだが…
標準ライブラリ(場所的には追加部分にあるのだけれど)から
どうやっても消えないので追加作業ができない…。
結論から言って、ARDUINO 1.6.4 には、標準で、LiquidCrystal_I2Cのライブラリが導入されている模様。
ライブラリを追加する前にすでにある。消す作業をするも消えない。。。
② Step 2 – Connect LCD with Arduino
結線せよ、との指示。
↑この画像は、osoyoo web の画像をそのまま表示させています。
消えている場合は、osoyoo の画像が消えてます。
③ Step 3 – Power up your devices.
まあ、電源いれてみそ、と。
背面のボリューム抵抗をプラスドライバーで回して適切な明るさにしなさい、と。
④ Step 4 – find the I2C address
この LCDのアドレスを調査せよ、との指示。
ic2_scanner sketch file (テキストファイル)をダウンロードし、ArduinoIDE に丸ごとコピペします。
ベースの setup, loopを消し、
貼り付け。
④-1 ボードに書き込む。
これを(レ)→(⇒)で Arduinoボードに書き込む。
④-2 コンソールを表示させる。
ツール>シリアルモニタ
④-3 アドレス発見!
スキャンプログラムは書き込み後、ずっと動き続けるので、焦らずに・・・。
もし文字化けしていたら、右下の ***** bps(上のキャプチャだと 19200bps)を9600bpsにすると、以下のような感じで表示される。
手持ちの I2C デバイスのアドレスは、0x3F ということがわかりました。
もし、うまくいかなければ、一番下の<おまけ>を参照!
⑤ Step 5 - Fire up the LCD
ic2_lcd_test sketch file をダウンロードし、ArduinoIDEに読み込ませます。
ファイル>開く... で、ic2_lcd_test.ino を読み込ませると、
フォルダーを作ってよいかと聞かれるので yes とします。
9行目に、
LiquidCrystal_I2C lcd(0x27,16,2);
というのがあります。この 0x27 を④で調べたアドレスに書き換えます。
で、(レ)→(⇒)で、Arduinoボードに書き込むと。。。
無事表示されました!
もし、うまくいかなければ、
次の<おまけ>を参照!
<おまけ>
ところが、ここまでが長い道のりで、なかなか表示されない。
どうやっても表示が遅かったり、まったく表示しなかったり・・・
ちょっと触るだけで表示が変になったり、文字化けしたり・・・
背面のボリュームを触ったりしても表示がおかしくなる・・・
LCDのどこかが接触不良っぽい・・・、ということで、LCDを眺めた結果・・・
LCD基盤は、2枚から成り、大きい方は、16x2のLCDがついている本体。
もう1枚の小さいほうは、I2Cを構成する、変換基盤。これは、4ピンで
これだけを Arduino に接続するとLCDを制御できる、ってもの。
これをよく見ると、SDA, SCL 端子が、下のチップと接触しているような(汗
さっそく、間に紙をはさんで絶縁してみる。。
わぉ!完璧な動きだわ・・・(苦笑)
ついでに、自作のArduino互換でも、完璧だわ。
叩いたり、揺らしたりしても全然動じない!!!
2015/11/03 追記
何を間に挟むかで悩んだ結果、新品のYシャツなどの襟元に型崩れを防止する
透明なプラ板が、なかなかイイ感じの厚みで、これを適度に切り刻んで、
差し込みました。
挟んだだけですが外れもせず(つまり接触してたってこと)
十分実用に耐えそうです。