aitendoで買った375円のバックライト付きI2C LCDで文字を表示してみた。
お疲れ様です。高橋です。
ちょっと前にaitendoで買ったバックライト付きのLCDとArduinoを使い、文字を表示させる事が出来ました。
バックライトのLEDは青タイプの物を買いましたが、とても眩しい。。
しかし、これで、味気ない音楽演奏中、音楽に合わせた文字表示が出来るってもんです。
半田付け
aitendoで売っているI2C LCDモジュールは、別途、3pinが2つと9pinが1個会ったほうが良いです。私はL字タイプの9pin1つと、まっすぐな3pinを2つ作り、それをLCDの裏から半田付けしました。
作り・・・と書いたのは、40個ぐらい連結されていて、簡単に指で自分の好みのサイズにパキパキ折れるヤツを持ってるからです。
右手で半田ごて、左手で半田を持ち、今までは部品類をテーブルの上に置いたまま半田付けしていたのですが、廣瀬無線で買った半田ごて台がとても便利です。今回は別に無くてもそれほど難易度高くないですが、線と線をくっつける時の威力は絶大だと思います。
配線
Arduino と LCDの間の配線は、簡単過ぎるので文字だけでの説明となります。
- Arduinoの3.3VをLCDのVDDとRESTとBL+に。(間にブレッドボードを挟むと超楽です。)
- ArduinoのA4をDATAに。
- ArduinoのA5をCLKに。
9pinの内、実際に使うのはCLKとDATAとVDDとGNDとBL+の4つです。
3pinはSHLとVDDをショートさせ、DIRCとVDDをショートさせるだけです。カラージャンパーというものを買いました。
スケッチ
最初の行に”hoge”と表示させ、改行し、0x40 (@マーク)から1つずつ順番にASCIIキャラクタを1秒毎に表示させています。1行16文字しか表示出来ないので、16文字で終わってしまいますが。
#include <Wire.h>
int sdaPin = 18; // analog pin 4
int sclPin = 19; // analog pin 5
int i2cadr = 0x3e;
byte contrast = 7;
void lcd_cmd(byte x)
{
Wire.beginTransmission(i2cadr);
Wire.write(0x00);
Wire.write(x);
Wire.endTransmission();
}
void lcd_data(byte x)
{
Wire.beginTransmission(i2cadr);
Wire.write(0x40);
Wire.write(x);
Wire.endTransmission();
}
void lcd_puts(const char *s)
{
while(*s) lcd_data(*s++);
}
void lcd_init()
{
Wire.begin();
lcd_cmd(0x38); // function set
lcd_cmd(0x39); // function set
lcd_cmd(0x14); // interval osc
lcd_cmd(0x70 | (contrast & 15)); // contrast low
lcd_cmd(0x5c | (contrast >> 4 & 3)); // contrast high / icon / power
lcd_cmd(0x6c); // follower control
delay(300);
lcd_cmd(0x38); // function set
lcd_cmd(0x0c); // display on
lcd_cmd(0x01); // clear display
delay(2);
}
void lcd_move(byte pos){
lcd_cmd(0x80 | pos);
}
void setup()
{
lcd_init();
}
void loop()
{
lcd_puts("hoge");
lcd_move(0x40);
for(int i = 0; i < 100; i++) {
lcd_data(0x40 + i);
delay(1000);
}
}
完成系
本当に眩しい。。
参考サイト: ArduinoでI2C液晶
おまけ
今日、会社の電子工作好きから、「びんぼうでいいの」をもらってしまいました!Arduino UNOは秋月で正規品を買うと2,940円もします。
Arduinoの互換機なのですが、各種ソケット類やジャック、AVRマイコン、マイコン用水晶が無い物です。自分でマイコンと水晶とソケット、ジャックを買って半田付けすれば、立派なArduino互換機の誕生です。
aitendoではマイコン以外の部品セットが250円で売っているので、ここにAVRマイコン(ATMega328P-PU 250円)と水晶(16MHz 30円)の280円、合計530円分の部品を買えば良いのです。
また秋葉原行く目的が生まれてしまいました。
以上、よろしくお願い致します。
関連記事
-
-
無線モジュールでモールス信号
お疲れ様です。高橋です。 無線モジュールnRF24L01Pを使った、なんちゃって …
-
-
電子オルゴール 動作試験
お疲れ様です。高橋です。 前回「電子オルゴール基板実装 #2 ~ワイヤストリッパ …
-
-
満員電車内でのオナラと検知 #2
お疲れ様です。高橋です。 最近なんだか忙しかったので、なかなか物が作れませんでし …
-
-
クオーツ時計を100倍速&リバースモード付きに改造してみた。
お疲れ様です。高橋です。 今日、奥さんから壊れた時計を貰いました。電池を入れ替え …
-
-
赤外線リモコンをケースに格納
お疲れ様です。高橋です。 先日作ったATtiny13Aの赤外線リモコンを、ケース …
-
-
音階LED完成、YMZのノイズの原因判明
お疲れ様です。高橋です。 音階LEDの実装が完了しました。 青色LEDが眩しすぎ …
-
-
満員電車内でのオナラと検知 #5
お疲れ様です。高橋です。 マイコンと5V給電 先日実験に成功した硫化水素センサー …
-
-
マウスの位置座標を使った電子楽器を作ってみた。
お疲れ様です。高橋です。 先日分解したマウスを使って、位置座標の取り出しと、取り …
-
-
YMZシールドの作成 #2
お疲れ様です。高橋です。 先日から作っていたYMZシールドですが、本日完成しまし …
-
-
YMZ294のMIDI音源化と、YMZのピン数圧縮
お疲れ様です。高橋です。 YMZで使うピン数を11本から6本に減らす事によって、 …




