大御所、船田戦闘機さんのサイトを眺めに行く…。
http://www.nnar.org/archives/993
ladyadaさんが0017のLCDライブラリ用に
外字表示の機能まで付けていてくれたことを知る。
うーん、スクロールとかブリンクとか、そういう
あまりオイラが使わなさそうなものばかり目に
付いたのでわからなかったけど、こんな機能が
付いてたのか! createChar() かぁ。
早速、サンプルスケッチをもらってきて動かして見る。
データは自分で作ったのを表示してみようと
思うので、そこだけはちゃんと弄ってみることに。
うん。ネコを描いて見よう。ミミ、鼻、丸い顔…と。
外字はキャラクターコード(asciiコード?)の
0~7番、計8個に割り当てが出来るみたいなので、
サンプルコードどおり0番に登録。あとはカーソル位置
を設定してからwrite()メソッドでそのキャラクター
コードを指定すればOK。右下にネコを表示してみます。
スケッチはこんな感じ。この間のスケッチに付け足し。
(例によって不等号は全角に換えてるので戻して
使ってください)
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
void setup()
{
lcd.begin(16, 2);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("hello, world!");
lcd.setCursor(5, 1);
lcd.print("arduino.");
byte neko[8] = {
B00000,
B01010,
B11111,
B11111,
B01110,
B00100,
B00000,
};
lcd.createChar(0, neko);
lcd.setCursor(15, 1);
lcd.write(0);
}
void loop() {}
実行すると、出た。右下。
うーん、ネコって言うより単なるハートマーク
だな。でもまぁ、ビットマップの定義どおりに表示
されたから良しとします。
この簡単さがいいところだな。便利、便利。
そしてladyadaさんに感謝!
|
|
|