I2C接続の40文字X4行の大型LCD(LCM4004A1)を動かした
この前、いろいろパーツ漁りをしていたら、20X4行を超える40文字X4のLCDが売っていることに気が付いた。まあ、コンパクト押さえないという気持ちもあるけど、いろいろ情報が拾えるのも助かるなあと思ったので、今回買ってきたけど、これも罠があった。I2C接続だと、標準ライブラリーだと3,4行目が表示されない問題があるようだ。今回買ったLCD下記から、いろいろあるだけど、A1とA2があるだけど、DB0-DB7が逆になるので、ここは注意した方が良い。私はA1タイプにした。
I2C変換のボードは、20X4を流用しているけど、微妙に仕様が違うようだ。
とりあえず、ESP32につないで、表示させてみた。
しかし、標準ライブラリーだと、3、4行目が表示されない。購入者のレビューを見ても同様の報告が上がっている。
問題は、LCM4004Aは2つのEnable端子があって、制御しないと動かないようだ。LCM4004Aは下記のような配線になっているようだ。
それに対して、20X4のI2C接続は、Enableは一個しかない。
2つ目のEnableを制御するドライバーがないと動かないことが分かったけど、検索すると見つかった。
Pcf8574 i2c adapter modified for LCD 4004 with clear – Using Arduino / Displays – Arduino Forum
このライブラリーを使って、3行目と4行目に文字が出るようになった。
最近のコメント