秋月のI2C LCD ACM1602を使ってみた

ちょっとした回路を組んでいて、LCD表示が欲しくなった。
8ピンマイコン(12F675)を使う関係上、パラレルデータバスのLCDだとポートが足りない。
そこで、秋月のI2CのLCDを使うことにした。
I2Cなんぞ初めてなんで、データシートを一読しただけではよく分からなかった。
沢山のICがデータバスにつなげられるのは知っているのだけれど・・・。
噛み砕いていえば、I2Cってのは、バスが2本でデータにスレーブのアドレスを送ってやり、それに合致したアドレスのICが応答するってわけ。
なーんだ ではあるけれど、プログラムを作るのが面倒くさそう。
picfun.comに参考になるプログラムかあったので、そいつをベースに12F675+ACM1602用に作り変えた。
当該のプログラムは、I2Cが使えない12F683とストロベリ-リナックスで売っているLCD用なのだが、ちょっともじるだけで他のマイコンに移植することは可能。
12F675もI2Cが使えないから、12F683と殆どやっていることは一緒。
おぉ、ちゃんとLCDが表示するじゃん。
さらに別のプログラムを作ってみる。ところが、2行表示できるはずが1行しか表示されなくなったのだ。
これには、かなりはまってしまったが、単においらがLCDの設定ミスをしただけだったのだ。
I2Cは、何もしない時は、全てのバスをHレベルにしておくというお作法があるのだ。
それをしなかったために、おかしな動作をしたってわけ。
これさえ分かってしまえば、楽勝!
-
前の記事
ちょっとねぇ… 2015.05.23
-
次の記事
PICで複合演算できたのね。 2015.05.26